#P11543. [2024省队模拟]机器人
[2024省队模拟]机器人
【题目描述】
给一个 的网格图,左上角坐标为 ,右下角坐标为 。其中有一部分格子上有障碍物。
在网格的上方,有 个机器人。可以将它们看作位于第 行,则第 个机器人的坐标为 。
在网格的下方,有 个出口。可以将它们看作位于第 行,则第 个出口的坐标为 。
机器人都只会向前走。初始时,每个机器人都朝向正下方。
现在你可以在某些格子上放置转向器,每个格子上至多放置一台转向器。对于每台转向器,你可以任意选择两个不同的方向(上,下,左,右),将这两个方向用圆滑的轨道连接起来。注意这会将另外两个方向给堵住。比如,如果选择上和右两个方向,则上方来的机器人会转向右边,右方来的机器人会转向上面,而左方和下方来的机器人会被挡住而无法继续运动。
现在你知道了这个网格的布局信息,以及每个机器人和出口的位置。你的任务是找到一种放置转换器的方案,使得每个机器人都会从出口离开该网格图,任意时刻机器人的坐标可以相同。
由于机器人们没有配置检验方案合法的程序,并且你深得机器人们的信任,所以你只需要告诉它们是否存在这样的方案就好了。
【输入格式】
从文件 中读入数据。
本题为多组数据,输入数据第一行包含一个整数 ,表示数据组数。
对于每组数据:
第一行包含四个整数 ,分别表示网格长、宽,机器人个数和出口个数。
接下来的 行每行包含一个长度为 的 串,描述了网格的布局。字符为 表示该位置有障碍物。
接下来的一行包含 个整数表示机器人的初始位置。
接下来的一行包含 个整数表示出口位置。
【输出格式】
输出到文件 中。
对于每组数据,输出一行 或 ,表示是否存在一种合法方案。
【样例输入1】
2
3 4 2 2
0000
0011
0000
1 4
2 4
3 4 2 2
0000
0011
0000
3 4
2 4
【样例输出1】
Yes
No
【样例1解释】
对于第一组数据,一号机器人在 转向右边,直到 转向下面。二号机器人在 转向左边,在 转向下面。
对于第二组数据,发现两只机器人至少有一个无法到达 ,所以不存在合法方案。
【样例2】
见选手目录下的 与 。
【样例3】
见选手目录下的 与 。
【样例4】
见选手目录下的 与 。
【样例5】
见选手目录下的 与 。
【样例6】
见选手目录下的 与 。
【数据范围】
测试点编号 | 特殊性质 | |
---|---|---|
无 | ||
对于所有数据,保证:,,,。保证机器人坐标互不相同,出口坐标互不相同。