题目名称 | 944. [東方S3] 藤原妹红 |
---|---|
输入输出 | mokou.in/out |
难度等级 | ★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 10 |
题目来源 | Makazeu 于2012-07-20加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:10, 提交:41, 通过率:24.39% | ||||
leeson | 100 | 0.377 s | 10.51 MiB | C++ |
ZlycerQan | 100 | 0.377 s | 57.51 MiB | C++ |
__debug | 100 | 0.378 s | 13.13 MiB | C++ |
ZlycerQan | 100 | 0.380 s | 57.51 MiB | C++ |
__debug | 100 | 0.382 s | 13.13 MiB | C++ |
ZlycerQan | 100 | 0.385 s | 48.36 MiB | C++ |
水中音 | 100 | 0.386 s | 5.65 MiB | C++ |
Archon | 100 | 0.402 s | 6.88 MiB | C++ |
HouJikan | 100 | 0.406 s | 4.03 MiB | C++ |
不知云 | 100 | 0.514 s | 1.29 MiB | C++ |
本题关联比赛 | |||
东方幻想乡 S3 |
关于 藤原妹红 的近10条评论(全部评论) | ||||
---|---|---|---|---|
回复 @HouJikan :
阁下无法理解窝的思路就像神犇无法理解蒟蒻的思路一样QAQ
水中音
2014-10-23 18:04
4楼
| ||||
回复 @HouJikan :
神犇您帖代码时有考虑过对拍人的感受吗QAQ…在下根本看不懂QAQ,错误只能自己去找 权值的最大用double可存,可以先将最大限度赋值为1e20之类的大数…反正用来比较的又不会有什么精度问题… | ||||
初值设为100000000000000ll都不够我也是没办法
|
Problem 3 |
藤原妹红(mokou.cpp/c/pas) |
题目描述 |
在幻想乡,藤原妹红(ふじわらのもこう)是拥有不老不死能力的人类。虽然不喜欢与人们交流,妹红仍然保护着误入迷途竹林村民。由于算得上是幻想乡最强的人类,对于她而言,迷途竹林的单向道路亦可以逆行。在妹红眼中,迷途竹林可以视为一个由N个路口(编号1..N),M条不同长度双向路连接的区域。妹红所在的红之自警队为了方便在迷途竹林中行动,绘制了一张特殊的迷途竹林地图,这张地图上只保留了N-1条道路,这些道路保证了任意两个路口间有且仅有一条路径,并且满足所有保留的道路长度之和最小,我们称这些道路为『自警队道路』。现在妹红打算在其中一个连接有多条『自警队道路』的路口设立根据地,当去掉根据地这个根据地所在路口后,就会出现某些路口间无法通过『自警队道路』相互连通的情况,我们认为这时仍然能够通过『自警队道路』连通的路口属于同一个『区域』。妹红希望最后每个『区域』的『自警队道路』总长尽可能平均,请计算出她应该选择哪一个路口作为根据地。 下例中红色的路口为妹红选择的根据地,实线边表示『自警队道路』,绿色虚线边表示非『自警队道路』,数字表示边权,『自警队道路』中相同颜色的实线边代表属于同一个『区域』:
(尽可能平均即权重最小,设每一块『区域』的路线总长为Length[i],平均路线长度为Avg=SUM{Length[i]}/区域数,权重d=∑( (Length[i]-Avg)^2 ) ) |
输入格式 |
第1行:2个正整数N,M 第2..M+1行:每行2个整数u,v和1个实数len,表示u,v之间存在长度为len的边 |
输出格式 |
第1行:1个整数,最后选择的路口编号,存在多个可选路口时选择编号小的 |
输入样例 |
3 3 3 1 5 3 2 4 1 2 3 |
输出样例 |
2 |
样例解释 |
妹红的『自警队道路』为(1,2)和(2,3)。 只能选择2作为根据地,产生的两个区域Length[i]分别为3和4。 所以方差为:(4-3.5)^2 + (3-3.5)^2 = 0.5 |
数据范围 |
对于60%的数据:3 ≤ N ≤ 2,000,N-1 ≤ M ≤ 50,000 对于100%的数据:3 ≤ N ≤ 40,000,N-1 ≤ M ≤ 200,000 对于100%的数据:0 < len ≤ 100,000,000 |
注意 |
保证不存在相同距离的线路,两个路口间可能出现多条路径,且任意点对间至少存在一条路径。 |