atcoder#ARC087C. [ARC087E] Prefix-free Game
[ARC087E] Prefix-free Game
Score : points
Problem Statement
For strings and , we will say that and are prefix-free when neither is a prefix of the other.
Let be a positive integer. A set of strings is a good string set when the following conditions hold true:
- Each string in has a length between and (inclusive) and consists of the characters
0
and1
. - Any two distinct strings in are prefix-free.
We have a good string set . Alice and Bob will play a game against each other. They will alternately perform the following operation, starting from Alice:
- Add a new string to . After addition, must still be a good string set.
The first player who becomes unable to perform the operation loses the game. Determine the winner of the game when both players play optimally.
Constraints
- , , ..., are all distinct.
- { , , ..., } is a good string set.
Input
Input is given from Standard Input in the following format:
Output
If Alice will win, print Alice
; if Bob will win, print Bob
.
2 2
00
01
Alice
If Alice adds 1
, Bob will be unable to add a new string.
2 2
00
11
Bob
There are two strings that Alice can add on the first turn: 01
and 10
.
In case she adds 01
, if Bob add 10
, she will be unable to add a new string.
Also, in case she adds 10
, if Bob add 01
, she will be unable to add a new string.
3 3
0
10
110
Alice
If Alice adds 111
, Bob will be unable to add a new string.
2 1
0
1
Bob
Alice is unable to add a new string on the first turn.
1 2
11
Alice
2 3
101
11
Bob