No.3586 Divide and Be Conquered
タグ : / 解いたユーザー数 24
作問者 :
siganai
問題文
$N$ 個の山があり、山 $i$ には $A_i$ 個の石があります。
$2$ 人のプレイヤーが、これらの山を使ってゲームを行います。 先手から始めて交互に、現在の山の集合に対して以下の操作†を $1$ 回行います。
- 手番のプレイヤーが、石が $2$ 個以上ある山を $1$ つ選ぶ。
-
相手のプレイヤーが、その山を石が $1$ 個以上ある $2$ つの山に分ける。
すなわち、選ばれた山の石の個数を $x$ とすると、 正整数 $a,b$ を用いて $x=a+b$ となるように、 山を $a$ 個の石からなる山と $b$ 個の石からなる山に分ける。 - 手番のプレイヤーが、分けられた $2$ つの山のうち一方を選んで取り除く。 もう一方の山はそのまま残る。
操作を行えなくなったプレイヤーは負けとなります。
$T$ 個のテストケースが与えられます。各テストケースについて、両者が最適に行動するとき、先手と後手のどちらが勝つかを判定してください。
† 本問題では、上記の手順 1, 2, 3 をまとめて「1 回の操作」と呼びます。
制約
- $1 \leq T \leq 10^5$
- $1 \leq N$
- $1 \leq A_{i} \leq 10^{18}$
- すべてのテストケースにおける $N$ の総和は $2 \times 10^5$ 以下
- $T$, $N$, $A_{i}$ は整数
入力
入力は以下の形式で標準入力から与えられます。ここで、 $t\ (1 \leq t \leq T)$ 番目のテストケースを $\mathrm{case}_t$ と表します。
$T$
$\mathrm{case}_1$
$\mathrm{case}_2$
$\vdots$
$\mathrm{case}_T$
各テストケースは以下の形式で与えられます。
$N$ $A_1$ $A_2$ $\dots$ $A_N$
ここで、$N$ はそのテストケースにおける山の個数、 $A_i$ はそのテストケースにおける $i$ 番目の山の石の個数を表します。
出力
$T$ 行出力してください。各テストケースについて、先手が勝つなら First を、
後手が勝つなら Second を 1 行に出力してください。
サンプル
サンプル1
入力
4 1 1 1 2 1 4 3 2 3 7
出力
Second First Second First
$1$ 個目のテストケースでは、石が $1$ 個の山しかないため、先手は操作できず負けです。
$2$ 個目のテストケースでは、先手は石が $2$ 個ある山を選びます。
後手はこれを $1$ 個と $1$ 個の山に分けるしかありません。
その後、先手は片方を取り除き、石が $1$ 個の山だけが残ります。
後手は操作できず負けです。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。