T230253 [愚人节比赛 2022] Reverse Ideology

题目背景

**这是一道 Aya 题。交互非常可爱。** 2077 年,可以解决一切简单博弈问题的式神被人类所发明,于是很多老游戏(例如石头剪刀布、井字棋)全都幻想入了。 现在,由于辉针城实在是太无聊了,少名针妙丸(下称小碗)开始与鬼人正邪(下称正邪)下井字棋。

题目描述

在下了几局后,她们突然发现,如果她们都决策正确,那么这个游戏一定会平局——这样就太没意思了嘛。所以,正邪发动了能力,每一回合(两人轮流操作一次称为一回合)都会使井字棋的规则翻转,使游戏充满了变数。 但是......虽然是正邪修改的规则,但是她除了「规则被翻转了」外什么也不知道!所以,她与小碗进行了几场对局,在一方胜利或者游戏平局时,对局会结束,并且最终的结果也会出现。她希望你能通过观察找到游戏的真正规则,并且构造出先手必胜策略。 在「样例组」中,正邪将会给出若干场对局的记录,其中输入为小碗(后手)的落子记录,输出则为正邪(先手)的落子记录。输入的最后会给出对局结果。保证没有人在对局结束后继续落子。 若正邪胜,结果为 `seija_win`,小碗胜则为 `shinmyoumaru_win`,否则为 `draw`。 ### 交互方式 首先,从标准输入读入正整数 $T$,表示交互次数。 每一次交互采用以下方式进行: 1. 玩家操作。你需要向标准输出输出一行两个整数 $x,y(1 \le x,y \le 3)$,表示你要绘制记号的位置,你需要保证该位置之前没有被绘制上记号。 1. 从标准输入读入一个整数 $t$。若此时游戏结束或者你的操作不合法,则 $t=1$,表示这一次交互结束。否则 $t=0$,表示交互继续进行。 1. 电脑操作。你需要从标准输入读入一行两个整数 $x,y(1 \le x,y \le 3)$,表示电脑绘制记号的位置。保证该操作合法。 1. 从标准输入读入一个整数 $t$。若此时游戏结束,则 $t=1$,表示这一次交互结束。否则 $t=0$,表示交互继续进行。 1. 回到步骤 $1$,相当于一个无限循环。 每一次游戏结束后,交互库会输出一行一个字符串,表示结果,你应该将它正常读入。如果结果不是你胜或者这是最后一次游戏,那么应该立即结束程序,否则立即进行下一次交互。

输入格式

参考「交互方式」。

输出格式

参考「交互方式」。

说明/提示

### 提示 保证本题仅有一个测试点,且其交互次数为 1000。 对于 C++ 选手,可以使用以下程序作为模板来作答: ```cpp #include int board[4][4]; std::pair Draw() { // draw in the middle of the board return std::make_pair(2, 2); } signed main() { int T; std::cin>>T; while(T--) { while (1) { std::pair d = Draw(); board[d.first][d.second] = 1; std::cout x >> y >> t; board[x][y] = 2; if (t) break; } std::string s; std::cin>>s; if(s!="seija_win") break; } return 0; } ```