#A5. Interactive Problem Test 1: The Battle

Interactive Problem Test 1: The Battle

题目背景

你是 U 国一名普普通通的飞行员。这天早上,你接到了一项艰巨的任务:飞往 J 国上空,对 G 城实施轰炸。

你将永远记住这个不平凡的日子:公元 549154918866 日。

很快,你圆满地完成了这一任务。然而,上级又向你下了额外命令:对 G 城近郊再次实施轰炸,彻底摧毁 J 国军队的司令部。

题目描述

G 城近郊是一个 8×88 \times 8 的网格,而 J 国军队的司令部将会占据 3×33 \times 3 的位置(保证整个司令部均在 8×88 \times 8 的网格内),其中正中间的那一格是总司令的办公室——只要炸掉总司令的办公室,整个司令部就被摧毁了。不幸的是,这个司令部建在地下,你无法得知它的位置。

你的飞机上还剩 77 枚炸弹,每枚炸弹可以对其中一格进行轰炸。被轰炸的格子将会塌陷,此时你可以得知这一格的具体情况。也就是说,每次轰炸后,你将得到以下三条信息中的一条:

  • 被轰炸的格子不是总司令的办公室,并且不属于司令部的一部分;
  • 被轰炸的格子不是总司令的办公室,但属于司令部的一部分;
  • 被轰炸的格子是总司令的办公室,轰炸成功。

请设计一个算法,对每次轰炸的位置进行规划,使得你能顺利完成任务。

交互方式

本题为交互题。

在你输出一行后,请使用 fflush(stdout); / cout.flush(); / cout << endl; 清空缓冲区。

在交互开始前,你将读入一个正整数 1T361 \le T \le 36,表示该测试点的数据组数。

接下来,对于每组数据,你将进行 171 \sim 7 轮交互:

  • 首先,你需要输出两个正整数 1x,y81 \le x,y \le 8,表示你这一次轰炸的位置为 (x,y)(x,y)
  • 接下来,你需要读入一个非负整数 0z20 \le z \le 2 表示轰炸结果:
    • z=0z=0:被轰炸的格子不是总司令的办公室,并且不属于司令部的一部分;
    • z=1z=1:被轰炸的格子不是总司令的办公室,但属于司令部的一部分;
    • z=2z=2:被轰炸的格子是总司令的办公室,轰炸成功。
  • 当以下两个事件中的某一个发生时,你将结束本组数据的交互,并开始下一组数据的交互:
    • 读入的轰炸结果为 z=2z=2
    • 在该组数据中,你已经进行了 77 轮交互。

如果你在每组数据中都成功地进行了轰炸,那么你将 AC 该测试点。

样例

3

0

0

0

1

2

0

1

1

2

2

1 1

4 4

7 7

4 7

3 7

1 1

4 1

6 1

5 2

6 6

提示

以下是带有注释的样例,其中 [I] 是你读入的内容,[O] 是你输出的内容,[N] 是注释(实际交互中不会出现):

[I] 3
[N] Interaction started. There are 3 testcases in this test.
[N] Testcase #1 started.
[N] Round #1:
[O] 1 1
[I] 0
[N] (1, 1) Exploded: Missed.
[N] Round #2:
[O] 4 4
[I] 0
[N] (4, 4) Exploded: Missed.
[N] Round #3:
[O] 7 7
[I] 0
[N] (7, 7) Exploded: Missed.
[N] Round #4:
[O] 4 7
[I] 1
[N] (4, 7) Exploded: Hit headquarter.
[N] Round #5:
[O] 3 7
[I] 2
[N] (3, 7) Exploded: Destroyed commander's office.
[N] Testcase #1 passed: Mission completed using 5 bombs.
[N] Testcase #2 started.
[N] Round #1:
[O] 1 1
[I] 0
[N] (1, 1) Exploded: Missed.
[N] Round #2:
[O] 4 1
[I] 1
[N] (4, 1) Exploded: Hit headquarter.
[N] Round #3:
[O] 6 1
[I] 1
[N] (6, 1) Exploded: Hit headquarter.
[N] Round #4:
[O] 5 2
[I] 2
[N] (5, 2) Exploded: Destroyed commander's office.
[N] Testcase #2 passed: Mission completed using 4 bombs.
[N] Testcase #3 started.
[N] Round #1:
[O] 6 6
[I] 2
[N] (6, 6) Exploded: Destroyed commander's office.
[N] Testcase #3 passed: Mission completed using 1 bomb.
[N] Interaction ended. All testcases passed. You got an accepted!