平衡点 / 【模版】模拟退火
[JSOI2004] 平衡点 / 吊打XXX
题目描述
如图,有 \(n\) 个重物,每个重物系在一条足够长的绳子上。
每条绳子自上而下穿过桌面上的洞,然后系在一起。图中 \(x\) 处就是公共的绳结。假设绳子是完全弹性的(即不会造成能量损失),桌子足够高(重物不会垂到地上),且忽略所有的摩擦,求绳结 \(x\) 最终平衡于何处。
注意:桌面上的洞都比绳结 \(x\) 小得多,所以即使某个重物特别重,绳结 \(x\) 也不可能穿过桌面上的洞掉下来,最多是卡在某个洞口处。
输入格式
文件的第一行为一个正整数 \(n\)(\(1\le n\le 1000\)),表示重物和洞的数目。
接下来的 \(n\) 行,每行是 \(3\) 个整数 \(x_i, y_i, w_i\),分别表示第 \(i\) 个洞的坐标以及第 \(i\) 个重物的重量。(\(-10000\le x_i,y_i\le10000, 0<w_i\le1000\))
输出格式
你的程序必须输出两个浮点数(保留小数点后三位),分别表示处于最终平衡状态时绳结 \(x\) 的横坐标和纵坐标。两个数以一个空格隔开。
样例 #1
样例输入 #1
3
0 0 1
0 2 1
1 1 1
样例输出 #1
0.577 1.000
来源
洛谷P1337
本题数据使用洛谷题解中的二分做法生成,共20组,为加强版。
经测试,使用洛谷题解中的三分做法提交,会有5个点WA,您可以下载本题数据来看到底是哪个做法出现了问题