問題
- $2$ 人交互に数を $1$ から順に言い合う。 $n$ を言ったほうが負けである。 つまり $n - 1$ を言った方が勝ちである。
- 数は, 一度に $k$ 個まで進めることができる。
あなたが先攻でジャッジが後攻です。ジャッジは頭が弱いため, 一度に言う数は, $n - 1$ を発言できる場合以外は一様乱数で決められることが分かっています。
あなたが勝ってください。
入出力
最初に, 提出したプログラムに対して整数 $n(20 \le n \le 10^5)$ と $k(2 \le k \le 5)$ が $1$ 行で空白区切りで与えられます。
次に $n - 1$ が発言されるまで以下を繰り返します。 $x$ をプレイヤーが最後に言った数と定義し, また最初は $x = 0$ とします。
- 提出したプログラムが整数 $p$ を $1$ 行に出力します。 $p$ はこのステップであなたが最後に言った数を意味し $x + 1 \le p \le \min(n - 1,x + k)$ を満たす必要があります。
- つぎに提出したプログラムに対して整数 $q$ が $1$ 行に与えられます。 $q$ はジャッジがこのステップで最後に言った数を意味します。 $q$ は $n - 1$ を発言できるとき $n - 1$, 発言できないとき $x + 1 \le q \le x + k$ を満たす範囲で一様乱数で生成されることが保証されます。
提出プログラム側かジャッジ側が $n - 1$ を発言したら, プログラムを終了する必要があります。
また提出プログラムが数を発言を出力したあとには, 次のジャッジの発言を受け取る前に出力を fflush してください。
不明瞭な点があるかもだけどゴメンネ, 奇跡が起これば想定解でもWAするかも
入出力例
ジャッジ側の出力 | 提出プログラムの出力 | 意味 |
---|---|---|
20 3 | このゲームでは $20$ を言ったら負けで, 一度に $3$ 個まで進められることを意味します。 | |
3 | あなたが数を $3$ 個進めて $3$ を発言したことを意味します。 | |
6 | ジャッジが数を $3$ 個進めて $6$ を発言したことを意味します。 | |
8 | あなたが数を $2$ 個進めて $8$ を発言したことを意味します。 | |
11 | ||
12 | ||
14 | ||
15 | ||
18 | ||
19 | この出力を行って終了すると正解と判定されます。 |