编程题
### 问题描述
晓宇喜欢和朋友们玩一种桌游卡牌(其实就是 $UNO$ )。这种卡牌共分四种颜色:红色、绿色、蓝色及黄色,每种颜色各有写着 $0−9$ 的数字牌和功能牌:$skip$(跳牌)、$$reverse$$(反转出牌方向)。另有一些转色牌,不属于任何颜色。
游戏开始时,晓宇、小鹏、小耿每人从牌堆抽出 $N$ 张牌,由丛雨第一个出牌,出牌顺序由晓宇决定。晓宇可以将任意牌作为第一张牌打出,接下来所有人出牌遵守以下规则:
按照晓宇规定的出牌顺序轮流出牌,必须出一张且只能出一张。若无符合规则的手牌可出,三人游戏失败。
若打出非转色牌,则所打出的牌要么颜色与上一张牌相同,要么数字与上一张牌相同(数字牌),要么功能与上一张牌相同(功能牌)。若为功能牌,执行对应功能:
- $skip$:跳过下家出牌,由下家的下家打出下一张牌(由于只有 $3$ 个人参加,下家的下家就是上家)。
- $reverse$ :将原本顺时针的出牌顺序变为逆时针,或相反,并由变化后的下家(原来的上家)打出下一张牌。
若打出转色牌,则无论上一张牌是什么都可以打出,且出牌者可决定下家应出哪种颜色的牌。
首先出完手牌的人胜出。而晓宇认为如果三个人能接连打出最后一张手牌,那么应该算共赢。
给出三人的手牌,请帮晓宇判断有没有**共赢**的可能性。
### 输入格式
第一行一个数字 $T$ 表示测试组数,接着有 $T$ 组数据按如下格式输入。
第一行一个整数 $n$ ,表示每个人的手牌数。
接下来三行,每行分别描述了丛雨、芳乃、茉子的手牌。
描述方法是输入 $n×2$ 个整数,每两个相邻的整数表示一张牌。
第一个整数表示颜色,用 $0, 1, 2, 3$ 表示红,黄,绿,蓝,若为 $4$ 则为转色牌。第二个整数为数值或功能,$10$ 表示 $skip$ ,$11$ 表示 $reverse$ 。对于转色牌,第二个整数无效。
### 输出格式
对于每组测试数据,若有可能共赢,输出 $Y$ ,否则输出 $N$ ,每次输出后换行。
### 输入样例
```
3
1
0 10
0 11
0 0
2
0 0 1 2
1 1 3 2
0 1 2 2
3
0 10 2 0 3 11
2 10 3 0 1 0
1 10 3 1 4 0
```
### 输出样例
```
Y
Y
Y
```
### 样例解释
第一组数据:丛雨规定顺序为丛雨-芳乃-茉子
丛雨打出红 $skip$(胜利)——芳乃被跳过——茉子打出红色 $0$ (胜利)——芳乃打出红色 $reverse$(胜利);
第二组数据:丛雨规定顺序为丛雨-茉子-芳乃
丛雨打出红色 $0$ ——茉子打出红色 $1$ ——芳乃打出黄色 $1$ ——丛雨打出黄色 $2$(胜利)——茉子打出绿色 $2$(胜利)——芳乃打出蓝色 $2$(胜利);
第三组数据:丛雨规定顺序为丛雨-芳乃-茉子
丛雨打出红色 $skip$——芳乃被跳过——茉子打出黄色 $skip$——丛雨被跳过——芳乃打出绿色 $skip$——茉子被跳过——丛雨打出绿色 $0$ ——芳乃打出蓝色 $0$ ——茉子打出蓝色 $1$ ——丛雨打出蓝色 $reverse$(胜利)——茉子转色为黄色(胜利)——芳乃打出黄色 $0$(胜利)。
### 数据范围
对于 $20\\%$ 的数据,满足 $n = 1$ 。
对于再 $20\\%$ 的数据,只有数字牌。
对于再 $20\\%$ 的数据,只有数字牌和转色牌。
对于 $100\\%$ 的数据,满足 $n \le 6, T \le 10$ 。