首页 > TAG信息列表 > JSOI2004

[JSOI2004] 平衡点 / 吊打XXX

link 模拟退火学习笔记。 模拟退火约等于醉汉走路,只不过聪明的醉汉会懂得向更优的方向走。这个算法的本质就是随机找一个解,如果更优则更新当前答案,如果稍劣则给一定概率更新(这个概率和当前温度以及两个答案的差值有关),一直到温度降到某个临界点之后就认为当前的答案就是答案,输出即

洛谷P1337 [JSOI2004]平衡点 / 吊打XXX

1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 typedef double db; 5 const int N=1e3+5; 6 db ansx,ansy,answ; 7 int n; 8 struct point{ 9 int x,y,w; 10 }p[N]; 11 12 ll read() 13 { 14 ll x=0,f=1;char ch=get

[JSOI2004]平衡点

模拟退火练手好题。 模拟退火我晚上会另写一篇。 有这么几个参数: \(T\):初始温度 \(eps\):终止状态 \(v\):速率 \(z\):差量,即随机的答案与当前手上的答案的差量。 随机接受函数:exp(-z / T) * RAND_MAX > rand() 这题中温度设为\(200\),速率为\(0.996\)可以通过(毕竟模拟退火是一个

洛谷P1337 [JSOI2004]平衡点 / 吊打XXX java实现

仍旧是一道模拟退火。 AC代码:(如果提交不成功,就多试几次吧~) import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Random; import java.util.StringTokenizer; public class Main implements Runnable{ static int n,mcnt; static dou

LG1337 [JSOI2004]平衡点 / 吊打XXX 模拟退火

问题描述 LG1337 题解 模拟退火模板 记住概率公式: \(exp(\frac{dealt}{T}) \times rand \ge RAND_MAX\) zzk太欧了,我交了一版没过他来了一下就A了。 \(\mathrm{Code}\) #include<bits/stdc++.h> using namespace std; template <typename Tp> void read(Tp &x){ x=0;char c

[JSOI2004]平衡点 / 吊打XXX

洛咕 题意:如图: 有n个重物,每个重物系在一条足够长的绳子上.每条绳子自上而下穿过桌面上的洞,然后系在一起。图中X处就是公共的绳结.假设绳子是完全弹性的(不会造成能量损失),桌子足够高(因而重物不会垂到地上),且忽略所有的摩擦.问绳结X最终平衡于何处.注意:桌面上的洞都比绳结X小得多,所以