#THU20251D. 井字井字棋

    ID: 126 Type: Default 1000ms 512MiB Tried: 16 Accepted: 6 Difficulty: 2 Uploaded By: Tags>清华推研机试环境测试校内推免模拟

井字井字棋

时间限制: 1.0 秒

空间限制: 512 MB

题目描述

井字井字棋的规则如下:

  • 棋盘由 3×33\times 3 的大格组成,每个大格中的所有小格构成一个井字棋,而整个棋盘中的所有大格也构成一个井字棋。从整体来看棋盘如下:

  • 对每个大格进行编号,第 ii 行第 jj 列的大格编号为 3i+j33i+j-3;同理,对每个大格内的小格也可以如此编号。我们用 (i,j)(i,j) 指代棋盘上编号为 ii 的大格内编号为 jj 的小格。
  • 该游戏一定能决出胜负,且在胜负决出前双方轮流落子。
  • 每个大格内的规则和井字棋一样,即若一方率先有三个子连成一线(横、竖、斜均可),则占领该大格。
  • 整个棋盘的规则也和井字棋一样,即若一方率先有三个子连成一线(横、竖、斜均可),则获胜。
  • 不能在有棋子的小格中落子;若大格被某一方占领了,则双方均不能再在大格内的任意小格落子。
  • 对于落子的限制:
    • 第一步不能下在 (5,5)(5,5),即最中心的小格。
    • 若该步不为第一步,设上一步对手下在了 (i,j)(i,j)
      • 若编号为 jj 的大格未被占领,则当前必须下在编号为 jj 的大格里。
      • 若编号为 jj 的大格被占领,则当前可下在棋盘上任意一个可以下的位置。
  • 若直至无地方可以落子还未决出胜负,则通过如下方法决出胜负:先比拼占领的大格数,多者获胜;若占领的大格数一样,则比拼未占领的大格中占领的小格数,多者获胜。可以证明,按照此规则一定能决出胜负。

现在,给你一个棋谱,请你帮忙判断该棋谱是否合法、若合法是否决出了胜负、若决出了胜负是谁赢了。

输入格式

从标准输入读入数据。

第一行一个整数 nn,表示棋谱长度。

接下来 nn 行,第 ii 行输入两个整数 ai,bia_i,b_i,表示第 ii 回合落子的人下在了位置 (i,j)(i,j)

输出格式

输出到标准输出。

棋谱不合法,当且仅当存在 ii1in1\le i\le n,使得下第 ii 步前每个人都下在能下的位置且没有决出胜负,而第 ii 步下在了不能下的位置。此时输出两行,第一行为 illegal,第二行为 ii

否则,棋谱合法。在此情况下,棋谱决出了胜负,当且仅当存在 ii1in1\le i\le n,使得下第 ii 步前未决出胜负而下第 ii 步后决出了胜负。此时输出两行,第一行为 firstsecond,分别表示是先手获胜还是后手获胜,第二行为 ii

否则,棋谱没有决出胜负,此时输出一行 to be continued

2
5 5
5 4
illegal
1
34
5 1
1 5
5 2
2 5
5 3
3 5
4 7
7 4
4 8
8 4
4 9
9 4
6 7
7 6
6 8
8 6
6 9
5 1
1 5
5 2
2 5
5 3
3 5
4 7
7 4
4 8
8 4
4 9
9 4
6 7
7 6
6 8
8 6
6 9
first
17
16
5 1
1 5
5 2
2 5
5 3
3 5
4 7
7 4
4 8
8 4
4 9
9 4
6 7
7 6
6 8
8 6
to be continued
39
5 1
1 5
5 2
2 5
5 3
3 5
6 1
1 6
6 2
2 6
6 3
3 6
4 1
1 4
4 2
2 4
4 4
4 3
3 4
4 6
7 9
9 7
7 8
8 8
8 9
9 9
9 1
9 8
8 6
4 9
7 7
8 7
8 3
3 2
3 3
3 1
3 9
3 7
3 8
second
39

数据规模与约定

本题采用捆绑测试,你只有通过一个子任务中的所有测试点才能得到该子任务的分数。

  • 子任务 1(30 分):棋谱不合法。
  • 子任务 2(30 分):棋谱合法但未决出胜负。
  • 子任务 3(40 分):无特殊限制。

对于 100%100\% 的数据,1n81, 1ai,bi91\le n\le 81,~1\le a_i,b_i\le 9