#P1024. Tester Program
Tester Program
📘 题目描述(中文)
原始问题(你不需要解这个问题,只需要验证别人的输出是否正确) 在 ACM/ICPC 比赛中,我们常见的题目是“在一个迷宫中找最短路径”。但现在,我们反过来问一个问题:
“给定一条路径,能否构造一个迷宫,让这条路径成为从起点到终点的唯一最短路径?”
我们将路径定义为:从迷宫的左下角 开始,一串移动方向构成的字符串(例如 RRRUULL)。你可以在一个 的方格上移动,只允许上下左右(U、D、L、R)移动。
你需要构造一些单位长度的墙(baffle),来阻止其它路径,从而确保你给定的路径是唯一最短路径。
但有个限制:
不能有冗余的墙:即不能移除任何一面墙而仍然保持路径唯一。
✅ 你的任务
我们懒得写这个“路径唯一性验证”的程序……所以现在请你来帮我们写!
你将读取:
原始问题的输入数据(迷宫大小、路径)
以及对该输入数据的“输出结果”(墙的数量 + 墙的定义)
请你判断,这个输出是否是正确的。
</p>🧾 输入格式 你从标准输入中读取所有内容,格式如下:
第 1 行是一个整数 (),表示测试用例个数。
对于每个测试用例:
1 行:两个整数 和 (迷宫的宽高)
1 行:路径字符串(由 U, D, L, R 构成)
1 行:一个整数 ,表示墙的数量
接下来的 行,每行 4 个整数: 表示墙连接了 与 ,两点必须是相邻的(上下或左右)
📤 输出格式
对于每个测试用例,输出一行:
若该输出能使给定路径成为从起点 到终点的唯一最短路径,且没有冗余墙 → 输出 CORRECT
否则输出 INCORRECT
2
8 5
RRRUULLURRRRDDRRUUU
19
0 0 0 1
1 0 1 1
2 0 2 1
2 1 3 1
3 0 4 0
3 1 4 1
3 2 4 2
3 2 3 3
2 2 2 3
4 2 4 3
0 3 0 4
1 3 1 4
2 3 2 4
3 3 3 4
4 3 4 4
5 3 5 4
5 3 6 3
5 2 6 2
6 1 6 2
4 3
RRRUU
2
2 2 3 2
2 2 2 1
CORRECT
INCORRECT