25368-23 火星探险问题

2536   8-23 火星探险问题

题目描述

火星探险队的登陆舱将在火星表面着陆,登陆舱内有多部障碍物探测车。登陆舱着陆后,探测车将离开登陆舱向先期到达的传送器方向移动。探测车在移动中还必须采集岩石标本。每一块岩石标本由最先遇到它的探测车完成采集。每块岩石标本只能被采集一次。岩石标本被采集后,其他探测车可以从原来岩石标本所在处通过。探测车不能通过有障碍的地面。本题限定探测车只能从登陆处沿着向南或向东的方向朝传送器移动,而且多个探测车可以在同一时间占据同一位置。如果某个探测车在到达传送器以前不能继续前进,则该车所采集的岩石标本将全部损失。

用一个P*Q 网格表示登陆舱与传送器之间的位置。登陆舱的位置在(X1,Y1)处,传送器的位置在(XP ,YQ)处。


给定每个位置的状态,计算探测车的最优移动方案,使到达传送器的探测车的数量最多,而且探测车采集到的岩石标本的数量最多。

输入格式:

输入数据的第1行为探测车数,第2 行为P的值,第3 行为Q 的值。接下来的Q 行是表示登陆舱与传送器之间的位置状态的P´Q 网格。用3 个数字表
示火星表面位置的状态: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 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

说明

0
0
通过提交
时空限制2000ms/128mb
题目来源
评测方式在线评测
题目类型
难        度