2153: 皮划艇船坞复原

内存限制:256 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:1 通过:1

题目描述

现在有一个皮划艇船队。每艘皮划艇都在自己的船坞中单独建造。
因此,海岸上散落着挖掘出来的船坞图案,其中一些甚至相互交叉,有些是独立的。
船坞是一个长度至少为 2 宽为 1 的矩形。
每个船坞要么垂直方向,要么水平方向。
每艘皮划艇的宽度与船坞的宽度相同,而皮划艇的长度比其对应的船坞的长度短一个单位。
下周天气预报预测有一场台风,希望每艘皮划艇都能放回到它所在的船坞中。
你的任务是判断是否存在一种方案使得所有的皮划艇都能放回所对应的船坞中。
下图是样例1对应的网格图以及一种解决方案:


输入格式

海岸与船坞被建模为一个矩形网格,每个方块大小等于1。
输入第一行为三个正整数H, W, N,分别表示网格的高度、宽度和船坞数量。
1 ≤ H, W ≤ 500, 1 ≤ 250000 ≤ N。
接下来 N 行,每行表示一个船坞。
每行输入为 X Y K D,其中 (X,Y) 表示船坞的起始位置,K 表示船坞的长度。
≤ X ≤ H, 1 ≤ Y ≤ W,2 ≤ K ≤ 500。
D表示方向字符 "L"、"R"、"U"、"D",表示船坞的方向。
输入保证船坞没有超过边界。

输出格式

如果所有皮划艇都可以放回船坞,则输出一行“Yes”;否则输出“No”。

输入样例 复制

样例1:
5 3 4
1 1 4 D
3 1 3 R
5 1 2 U
5 3 3 L

样例2:
5 5 5
1 1 5 R
1 1 5 D
5 5 5 L
5 5 5 U
5 3 5 U

输出样例 复制

样例1:
Yes

样例2:
No

数据范围与提示

来源:2022 CTU Open