「网络流 24 题23」火星探险问题

Special Judge 提交数: 3, 通过率: 0%, 平均分: 0

题目描述:

火星探险队的登陆舱将在火星表面着陆,登陆舱内有多部障碍物探测车。

登陆舱着陆后,探测车将离开登陆舱向先期到达的传送器方向移动。

探测车在移动中还必须采集岩石标本。

每一块岩石标本由最先遇到它的探测车完成采集。

每块岩石标本只能被采集一次。

岩石标本被采集后,其他探测车可以从原来岩石标本所在处通过。

探测车不能通过有障碍的地面。

本题限定探测车只能从登陆处沿着向南或向东的方向朝传送器移动,而且多个探测车可以在同一时间占据同一位置。

如果某个探测车在到达传送器以前不能继续前进,则该车所采集的岩石标本将全部损失。

用一个 P×Q 网格表示登陆舱与传送器之间的位置。登陆舱的位置在 (X1,Y1)处,传送器 的位置在 (XP,YQ) 处。 给定每个位置的状态,计算探测车的最优移动方案,使到达传送器的探测车的数量最多, 而且探测车采集到的岩石标本的数量最多。

1525083611180050161.png

输入格式:

文件的第一行为探测车数 car ,第二行为 P的值,第三行为 Q 的值。

接下来的 Q 行是表示登陆舱与传送器之间的位置状态的 P×Q 网格。

用三个数字表示火星表面位置的状态:0 表示平坦无障碍,1表示障碍,2 表示石块。

输出格式:

程序运行结束时,输出每个探测车向传送器移动的序列。

每行包含探测车号和一个移动方向,0 表示向南移动,1 表示向东移动。

样例输入:

2
10
8
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 1 0 0 0
0 0 0 1 0 2 0 0 0 0
1 1 0 1 2 0 0 0 0 1
0 1 0 0 2 0 1 1 0 0
0 1 0 1 0 0 1 1 0 0
0 1 2 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 0 0

样例输出:

1 1
1 1
1 1
1 1
1 0
1 0
1 1
1 1
1 1
1 1
1 0
1 0
1 1
1 0
1 0
1 0
2 1
2 1
2 1
2 1
2 0
2 0
2 0
2 0
2 1
2 0
2 0
2 1
2 0
2 1
2 1
2 1

提示:

1≤P,Q,car≤35

时间限制: 1000ms
空间限制: 256MB