1931: 老鼠迷宫
内存限制:256 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:8
解决:5
题目描述
为了研究老鼠的记忆力,Daddy Squirrel 设计了一个复杂的迷宫。迷宫中有N个房间,房间之间通过一些单向的通道进行连接。实验时,Daddy Squirrel 会在其中某一个房间中放入了奶酪,并在另一个房间内放下小老鼠,看看小老鼠能不能在最短的时间内吃到奶酪。为了更好的比对老鼠的行进路线,Daddy Squirrel 首先需要生成一个最优方案。
为了方便描述,Daddy Squirrel 首先对所有的房间进行1~N编号。一开始老鼠在房间M,从房间M开始,对所有房间都进行标注。标注的规则是:每个房间的值为从房间M到当前房间的所有路径中,所需经过的通道数最少的那条路径所经过的通道数。
例如,迷宫中共有四个房间,相互之间的通道用箭头表示,一开始从房间①出发:
① → ②
↓ ↓
④ ← ③
则,进行标注后,①号房间的值为0,②和④号房间的值为1,③号房间的值为2。
输入
输入数据共若干行,第一行包含两个正整数N和M(1<=M<=N<=100)。
接下来N行,每行包含N个用空格隔开的0或1,表示房间之间的通道情况。若第i+1行第j个数字C_ij为0,则表示从房间i到房间j无通道,否则则表示从房间i到房间j有通道。
输出
输出数据共若干行,每行包含若干个用空格隔开的整数。第k行的若干个整数表示所有被标注为k-1的房间编号,这些房间编号按从小到大的顺序排列。
样例输入 复制
4 1
0 1 0 1
0 0 1 0
0 0 0 1
0 0 0 0
样例输出 复制
1
2 4
3