版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
title: "题解 - [Luogu P1337] [JSOI2004] 平衡点 / 吊打XXX" categories:
如图: 有 n 个重物, 每个重物系在一条足够长的绳子上. 每条绳子自上而下穿过桌面上的洞, 然后系在一起. 图中 X 处就是公共的绳结. 假设绳子是完全弹性的 (不会造成能量损失), 桌子足够高 (因而重物不会垂到地上), 且忽略所有的摩擦
问绳结 X 最终平衡于何处
注意: 桌面上的洞都比绳结 X 小得多, 所以即使某个重物特别重, 绳结 X 也不可能穿过桌面上的洞掉下来, 最多是卡在某个洞口处
文件的第一行为一个正整数 n (1≤n≤1000), 表示重物和洞的数目. 接下来的 n 行, 每行是 3 个整数: Xi.Yi.Wi, 分别表示第 i 个洞的坐标以及第 i 个重物的重量. (-10000≤x,y≤10000, 0<w≤1000)
你的程序必须输出两个浮点数 (保留小数点后三位), 分别表示处于最终平衡状态时绳结 X 的横坐标和纵坐标. 两个数以一个空格隔开
3
0 0 1
0 2 1
1 1 1
0.577 1.000
[JSOI]
对给定的 $x{1..n}$, $y{1..n}$, $w_{1..n}$, 求
$$ f(x,y)=\sum_iw_i\sqrt{(x-x_i)^2+(y-y_i)^2} $$
的极值点 $(x,y)$
不难发现其 Hasse 矩阵是恒正定的, 也就是说其有且仅有一个极值点
故直接三分即可
不明白为啥一堆人非要模拟退火