AT_abc278_g [ABC278G] Generalized Subtraction Game
题目描述
[problemUrl]: https://atcoder.jp/contests/abc278/tasks/abc278_g
本题为**交互题**(你的程序将与评测程序通过标准输入输出进行交互)。
给定整数 $N, L, R$。
你将与评测系统进行如下游戏:
> 有 $N$ 张编号为 $1$ 到 $N$ 的卡片放在场上。
> 先手和后手轮流进行如下操作:
>
> - 选择一组整数 $(x, y)$,满足 $1 \leq x \leq N$,$L \leq y \leq R$,并且编号为 $x, x+1, \dots, x+y-1$ 的 $y$ 张卡片都还在场上,然后将这些卡片从场上移除。
>
> 不能进行操作的一方判负,另一方获胜。
你需要选择先手或后手。然后,在你选择的回合与评测系统进行游戏,并取得胜利。
输入格式
本题为交互题(你的程序将与评测程序通过标准输入输出进行交互)。
首先,输入一行,包含 $N, L, R$,格式如下:
> $N$ $L$ $R$
接下来,你需要选择先手或后手。如果选择先手,输出 `First`;如果选择后手,输出 `Second`。
之后,你将在你选择的回合与评测系统进行游戏,评测系统在另一方回合。你需要在游戏过程中与评测系统进行输入输出交互,直到游戏结束,并取得胜利。
当轮到你操作时,你需要输出你选择的 $(x, y)$,格式如下。如果没有可选的 $(x, y)$,则输出 $(0, 0)$。
> $x$ $y$
在评测系统的回合,评测系统会输出一组整数 $(a, b)$,格式如下:
> $a$ $b$
其中,$(a, b)$ 只可能为以下三种情况之一:
- $(a, b) = (0, 0)$:表示评测系统无法进行操作,你获胜。
- $(a, b) = (-1, -1)$:表示你上一次选择了非法的 $(x, y)$,或者你输出了 $(0, 0)$,你失败。
- 其他情况:表示评测系统选择了合法的 $(x, y) = (a, b)$ 进行操作。
当评测系统返回 $(a, b) = (0, 0)$ 或 $(a, b) = (-1, -1)$ 时,游戏已经结束。此时,请立即终止你的程序。
输出格式
无。
说明/提示
## 限制条件
- $1 \leq N \leq 2000$
- $1 \leq L \leq R \leq N$
- $N, L, R$ 均为整数
## 注意事项
- **每次输出后,请在行末加上换行并刷新标准输出。否则可能会导致评测结果为 TLE。**
- **如果在交互过程中输出了非法内容,或者程序中途退出,评测结果不确定。** 特别注意,如果程序运行时发生运行时错误,评测结果可能不是 RE,而是 WA 或 TLE。
- 游戏结束后请立即终止程序,否则评测结果不确定。
## 输入输出样例
以下为 $N = 6, L = 1, R = 2$ 时的输入输出示例。
输入 输出 说明
6 1 2 首先输入整数 $N, L, R$。
First 选择先手,开始游戏。
2 1 选择 $(x, y) = (2, 1)$,移除卡片 $2$。
3 2 选择 $(x, y) = (3, 2)$,移除卡片 $3, 4$。
6 1 选择 $(x, y) = (6, 1)$,移除卡片 $6$。
5 1 选择 $(x, y) = (5, 1)$,移除卡片 $5$。
1 1 选择 $(x, y) = (1, 1)$,移除卡片 $1$。
0 0 评测系统无法操作,你获胜。
由 ChatGPT 4.1 翻译