#arc162c. [arc162_c]Mex Game on Tree
[arc162_c]Mex Game on Tree
問題文
頂点に から の番号がついた 頂点の根付き木が与えられます。頂点 が根であり、頂点 の親は です。
根付き木の何個かの頂点には 以上 以下の整数が書かれています。この情報は数列 で与えられ、 の場合頂点 に整数 が書かれており、 の場合頂点 には整数が書かれていないことを意味しています。
Alice と Bob でゲームをします。Alice が先手で、全ての頂点に整数が書かれるまで以下の操作を交互に繰り返します。
- 整数が書かれていない頂点を 個選び、 以上 以下の整数を書く。
操作終了後の各頂点 に対して、 を「頂点 の部分木に含まれるどの頂点( 含む)にも書かれていないような最小の非負整数」と定めます。
を満たす頂点 が存在する場合 Alice の勝利、そうでない場合 Bob の勝利となります。両者が最適な行動を行う場合、どちらが勝つか判定してください。
個のテストケースが与えられるので、それぞれについて答えてください。
制約
- 入力される数値は全て整数
- つの入力に含まれるテストケースについて、 の総和は 以下
入力
入力は以下の形式で標準入力から与えられる。
各ケースは以下の形式で与えられる。
出力
行出力せよ。 行目には、 番目のテストケースについて、両者が最適な行動を行う場合 Alice が勝つならば Alice
を、Bob が勝つならば Bob
を出力せよ。
入力例 1
2
4 2
1 1 2
-1 -1 3 1
6 4
1 2 2 1 3
-1 -1 -1 -1 -1 -1
出力例 1
Alice
Bob
番目のテストケースについては、Alice が頂点 に を書き込むと、Bob の操作に依らず となります。そのため、Alice は勝つことができます。
番目のテストケースについては、Bob が上手く書き込む整数を選ぶことで、 なる頂点が存在しないようにできます。