问题3704--[JSOI2009]星际的争霸3704: [JSOI2009]星际的争霸
时间限制: 1 Sec 内存限制: 512 MB
提交: 0 解决: 0
[提交] [状态] [讨论版] [命题人:]题目描述
虫族已经消灭了神族。邪恶的虫族还想消灭掉人族,于是又向人族发起了战争。经过激烈的战斗,人族凭着团结的精神,视死如归的斗志把虫族打得落花流水。然而事 情还没结束,虫族是天生邪恶的,一有机会它们便要消灭人族,我们要先发制虫。正所谓斩草不除根,春风吹又生,为了人族子孙后代的幸福,人族不能放过余下的 虫族,一只也不能放过!当时战斗形势是:所有余下虫族集中在一个星球上,虫族也意识到它们不是顽抗的时候, 逃跑是它们唯一的出路,而且为了能有所生还,它们会分散的逃跑,但我们人族早有准备啦,军师派出多名探子,探出虫族逃跑的所有可能经过的路线,我们会派兵在其中若干条路上等待并消灭它们。虫族所在星球 编号为 0 ,另外还有 N 个星球,分别编号为 1 , 2 , … , N-1 , N 。建立一个原点在 0 号星球的三维坐标系,另 N 个星球的坐标为( X i , Y i , Z i ), i=1 , 2 , … , N-1 , N 。虫族已经建立了在这( N+1 )个星球之间的交通设备,具体的说,有某种不明交通工具 M 架,每架能且只能连接两个不同的星球使虫族能从连接的两个星球中的任一个到达另一个。探子已经探出这 M 架交通工具连接的星球对。军师要派兵在若干个虫族的通路中埋伏,要使所有虫都逃不了,但是要在某条通路中埋伏要派兵数目等于该通路连接的两个星球的距离的 平方,军师希望用最少的兵力达到不让一只虫逃掉的目的,你要帮他算算最少用兵数目。军师指出,若有某一只虫能逃离星球 0 到达另一个星球 i ,并且星球 i 与星球 0 的距离大于 R ,则该虫算逃掉了,它这时能用某种不明方法离开到很远很远的地方,然后重新繁衍出虫族,再来消灭我们人族,这正是我们要避免的。注意人族可以派兵埋伏于与 星球 0 距离大于 R 的地方。
输入
N M R
X1 Y1 Z1
X2 Y2 Z2
…
XN YN ZN
T1a T1b
T2a T2b
…
Tma Tmb
以 上的输入均为整数,同行整数用 1 个或多个空格隔开。第一行: N ( 1<= N <=50 )为除星球 0 外的星球数, M ( 0<= M <= N*(N+1)/2 ) 为虫族交通工具数目, R(1<= R<=10000 ) 为虫族逃离界限,意义见上。往下 N 行:( X i , Y i , Z i )分别描述星球 i 的坐标, i=1 , 2 , … , N-1 , N. (-1000 <= X i , Y i , Z i <= 1000)
再往下 M 行: T ia T ib 分别描述第 i 个交通工具连接的两个星球。 0 <= T ia , T ib <= N 并且 T ia 不等于 T ib , 并且若 T ia T ib 出现了,往下就不会再有 T ia T ib 或 T ib T ia ,既每对点最多出现一次。
输出
仅一个整数,即所用的最少兵力。
样例输入
sample1:
1 1 2
1 1 1
0 1
sample2:
1 1 1
1 1 1
0 1
样例输出
sample1:
0
sample2:
3
来源/分类
[提交] [状态]