网站页面
当前课程
成员
General
主题 1
主题 2
主题 4
主题 5
主题 6
主题 7
主题 8
主题 9
主题 10
主题 11
主题 12
主题 13
主题 14
主题 15
主题 16
主题 17
主题 18
主题 19
主题 20
[POI1998]公路网
成绩 | 0 | 开启时间 | 2013年01月22日 星期二 09:40 |
折扣 | 0.8 | 折扣时间 | 2013年01月22日 星期二 09:40 |
允许迟交 | 是 | 关闭时间 | 2013年01月22日 星期二 09:40 |
输入文件 | sie.in | 输出文件 | sie.out |
一张磁盘被写入了一张公路网。这张磁盘包括一个写有任何两个村庄之间最短路径长的表格。所有的路都是双向的。地图上的村庄所处的位置有以下一个有趣 的特点:如果村庄A与村庄B之间的最短路径长等于村庄A与村庄C之间的最短路径长和村庄B与村庄C之间的最短路径长之和,我们就说村庄C处在村庄A与村庄 B的最短路径上。如果不存在其他的C使村庄C在村庄A与村庄B的最短路径上,我们把村庄A、B称为相邻的村庄。试找出所有的相邻村庄。
例子: 对于如下一张距离表格:
A B C A 0 1 2 B 1 0 0 C 2 3 3
相邻的村庄有村庄A和B,A和C。
任务: 编一个程序:
- 从文件中读入最短距离表格。
- 找出所有的相邻村庄。
- 把结果写入文件。
输入: 在文件的第一行有一个整数n(1<=n<=200)表示地图中村庄的个数,村庄被标号为1..n。
以下n行给出最短距离表格,在第i+1行(1<=i<=n)有n个非负整数(不超过200),有空格隔开,第j个整数表示村庄I与j的最短距离。
输出:
你的程序必须在文件中给出所有的相邻村庄对。每行写一对,每一对只出现一次。每一对中的数字必须升序给出,且当对(a,b)与(c,d)满足(a
输入样例:
3 0 1 2 1 0 3 2 3 0
输出样例:
1 2 1 3