题号:NC232158
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
江湖传闻,出题的时候要说几句废话走走流程。
今天在这里郑重说明,这不是传闻。
A同学还在上中学的时候,每学期都会发一些被拿来来下五子棋的本子,其中A同学最喜欢干两件事情,那就是抄古诗和同学下五子棋,有天默写古诗没默写出来,被老师罚抄 "独有病眼花,春风吹不落。"一百遍。这天抄着抄着,A同学和B同学心血来潮,从这个本子上截取一个

的点阵,并整了一个新活。

两个人轮流在相邻的点之间画上红边和蓝,A同学先手,使用红色,B同学后手,使用蓝色。

当出现一个封闭的圈时(面积不必为1),游戏结束。
现在俩人一顿操作猛如虎,请问游戏能够顺利结束吗?
输入描述:
输入数据第一行为两个整数
和
。
表示截取下来点阵的大小,
表示一共画了
条线。
接下来
行,每行首先有两个数字
,代表了画线的起点坐标,接下来一个字符char
('D' , 'R')对应下和右(请注意只包含'D'和'R') , 表示这条线段是以起点坐标根据给出方向画的一条长度为1的线段。
输入数据不会有重复的线段且不会出现画出边界的情况。
输出描述:
输出一行:在第几步的时候结束。
假如 m 步之后还没有结束,则输出一行“draw”(不带引号)。
数据范围:

示例1
输入
复制
3 8
1 1 D
1 1 R
1 2 D
2 1 D
2 2 R
3 1 R
3 2 R
2 3 D
说明
存在一个 3x3 的点阵
第1次操作 A同学 在第1行第1列的点 和 第2行第1列的点之间连一条线
第2次操作 B同学 在第1行第1列的点 和 第1行第2列的点之间连一条线
第3次操作 A同学 在第1行第2列的点 和 第2行第2列的点之间连一条线
第4次操作 B同学 在第2行第1列的点 和 第3行第1列的点之间连一条线
第5次操作 A同学 在第2行第2列的点 和 第2行第3列的点之间连一条线
第6次操作 B同学 在第3行第1列的点 和 第3行第2列的点之间连一条线
第7次操作 A同学 在第3行第2列的点 和 第3行第3列的点之间连一条线
第8次操作 B同学 在第2行第3列的点 和 第3行第3列的点之间连一条线
形成闭环,B同学胜利,游戏结束