Time Limit: 2 sec / Memory Limit: 1024 MB
配点 : 600 点
問題文
N 個の石の山があり、はじめ i 番目の山には石が A_i 個あります。これらの山を使って先手太郎君と後手次郎君でゲームをします。
先手太郎君と後手次郎君は、先手太郎君が先手で交互に以下の操作を行います。
- 石の山を一つ選び、そこから L 個以上 R 個以下の石を取り除く。
操作が行えなくなった方が負けで、負けなかった方が勝ちです。両者が勝ちを目指して最適な行動を取るとき、どちらが勝つか判定してください。
制約
- 1\leq N \leq 2\times 10^5
- 1\leq L \leq R \leq 10^9
- 1\leq A_i \leq 10^9
- 入力はすべて整数である。
入力
入力は以下の形式で標準入力から与えられる。
N L R A_1 A_2 \ldots A_N
出力
先手太郎君が勝つ場合 First
を、後手次郎君が勝つ場合 Second
を出力せよ。
入力例 1
3 1 2 2 3 3
出力例 1
First
先手太郎君が最初に 1 番目の山の石を 2 個取り除くことで、必ず勝つことができます。
入力例 2
5 1 1 3 1 4 1 5
出力例 2
Second
入力例 3
7 3 14 10 20 30 40 50 60 70
出力例 3
First
Score : 600 points
Problem Statement
There are N piles of stones. Initially, the i-th pile contains A_i stones. With these piles, Taro the First and Jiro the Second play a game against each other.
Taro the First and Jiro the Second make the following move alternately, with Taro the First going first:
- Choose a pile of stones, and remove between L and R stones (inclusive) from it.
A player who is unable to make a move loses, and the other player wins. Who wins if they optimally play to win?
Constraints
- 1\leq N \leq 2\times 10^5
- 1\leq L \leq R \leq 10^9
- 1\leq A_i \leq 10^9
- All values in the input are integers.
Input
The input is given from Standard Input in the following format:
N L R A_1 A_2 \ldots A_N
Output
Print First
if Taro the First wins; print Second
if Jiro the Second wins.
Sample Input 1
3 1 2 2 3 3
Sample Output 1
First
Taro the First can always win by removing two stones from the first pile in his first move.
Sample Input 2
5 1 1 3 1 4 1 5
Sample Output 2
Second
Sample Input 3
7 3 14 10 20 30 40 50 60 70
Sample Output 3
First