H - Hyper Nim Machine
問題文
石の山が $N$ 個あり、$i$ 番目の山には石が $A_{i}$ 個あります。
高橋くんと最強の Nim マシン Anstoppable Omnipotent King of Ishitori 、通称 Aoki はこれらの山を使って Nim で対戦します。
Nim とは、以下の操作を交互に繰り返し、操作が行えなくなったほうが負けとなるゲームです。
操作:石が $1$ 個以上残っている山を $1$ つ選び、そこから $1$ 個以上の石を取り除く。
最強の Nim マシン Aoki は自分の番に 最適な 操作の中から一様ランダムに一つを選んで行いますが、整備不良のため、自分の最初の番だけは 可能な 操作の中から一様ランダムに一つを選んで行います。
先攻プレイヤーの情報 $S$ が与えられます。$S$ が Takahashi
の場合は高橋くんが先攻、Aoki
の場合は最強の Nim マシン Aoki が先攻です。
高橋くんが最適に行動した場合の勝率を求めてください。答えは有理数になることが証明できるので、それを既約分数の形で出力してください。
制約
- $1 \le N \le 2\times 10^{5}$
- $1 \le A_{i} \le 10^{9}$
- $N, A_{i}$ は整数
- $S$ は
Takahashi
かAoki
のいずれか
部分点
この問題には、部分点が設定されている。部分点の採点方法については、コンテストトップ を参照すること。
- ($70$ 点)
- $N \le 2\times 10^{3}$
- $\sum_{i=1}^{N} A_{i} \le 5\times 10^{3}$
- $S$ は
Takahashi
- ($70$ 点)
- $N \le 2\times 10^{3}$
- $\sum_{i=1}^{N} A_{i} \le 5\times 10^{3}$
- $S$ は
Aoki
- ($70$ 点)
- $\sum_{i=1}^{N} A_{i} \le 5\times 10^{5}$
- $S$ は
Takahashi
- ($70$ 点)
- $\sum_{i=1}^{N} A_{i} \le 5\times 10^{5}$
- $S$ は
Aoki
- ($70$ 点)
- $S$ は
Takahashi
- ($70$ 点)
- $S$ は
Aoki
- ($230$ 点)
- 追加の制約はない。
入力
入力は以下の形式で標準入力から与えられる。
$N$
$A_1$ $A_2$ $\cdots$ $A_N$
$S$
出力
答えを既約分数の形で一行に出力せよ。厳密には、答えとなる有理数が既約分数で $P/Q$ と表せるとき、 $P$ 、/
、$Q$ をこの順に一行に出力せよ。間に余分な空白などを入れてはならない。
2
2 2
Takahashi
2/3
高橋くんが先攻です。ここでは、高橋くんが最初の番に $1$ 番目の山から $1$ 個石を取ることにする場合を考えます。
次の Aoki の番では、Aoki は以下の操作から一つを等確率で選んで行います。
- $1$ 番目の山から $1$ 個の石を取る(操作 a)。
- $2$ 番目の山から $1$ 個の石を取る(操作 b)。
- $2$ 番目の山から $2$ 個の石を取る(操作 c)。
Aoki が操作 a または c を行った場合、これ以降両者が最適に行動すれば高橋くんがゲームに勝つことが示せます。Aoki が操作 b を行った場合、高橋くんは勝つことができません。このとき、高橋くんが勝利する確率は $\frac{2}{3}$ で、これが最大となります。
この入力は、部分点 1., 3., 5. の制約を満たします。
2
1 3
Aoki
3/4
Aoki が先攻です。Aoki は最初の番に以下の操作から一つを等確率で選んで行います。
- $1$ 番目の山から $1$ 個の石を取る(操作 d)。
- $2$ 番目の山から $1$ 個の石を取る(操作 e)。
- $2$ 番目の山から $2$ 個の石を取る(操作 f)。
- $2$ 番目の山から $3$ 個の石を取る(操作 g)。
Aoki が操作 d, e, g のいずれかを行った場合、これ以降両者が最適に行動すれば高橋くんがゲームに勝つことが示せます。Aoki が操作 f を行った場合、高橋くんは勝つことができません。したがって、高橋くんが勝利する確率は $\frac{3}{4}$ です。
この入力は、部分点 2., 4., 6. の制約を満たします。
6
3 1 4 1 5 9
Takahashi
1/1
高橋くんが先攻です。Aoki が最初の自分の番にどのような操作を行っても、高橋くんは必ず勝つことができます。
この入力は、部分点 1., 3., 5. の制約を満たします。
3
1 1 1
Aoki
0/1
Aoki が先攻です。Aoki が最初の自分の番に行う操作は山を区別すると $3$ 通りありますが、どのような場合でも高橋くんは必ず負けてしまいます。この場合は 0/1
と出力してください。
この入力は、部分点 2., 4., 6. の制約を満たします。