아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

31 게임

시간 제한1초메모리 제한128 MB

요약
1부터 6까지 각각 네 장씩 있는 카드로 31을 넘기지 않고 두는 게임에서, 일부 진행된 상태가 주어질 때 완벽한 플레이를 가정하고 승자를 구한다.
난이도

어려움10점 중 8점

유형
게임 이론, 동적 계획법, 백트래킹, 조합론
정답자
아직 제출이 없습니다

문제

'31 게임'은 옛날 기차를 타고 다니던 사기꾼들이 즐기던 놀이다. 이 게임은 2424장의 카드로 진행하며, 1, 2, 3, 4, 5, 6이 각각 44장씩 들어 있다(즉 1 카드가 44장, 2 카드가 44장, … 이런 식이다). 처음에는 모든 카드가 앞면을 위로 한 채 탁자에 펼쳐져 있고, 버림 더미는 비어 있다. 두 사람은 번갈아 차례를 진행한다. 각 차례에 현재 플레이어는 탁자에서 아직 쓰지 않은 카드 한 장을 집어 버림 더미 위에 올려놓는다. 목표는 더미에 놓인 카드들의 합이 3131을 넘지 않도록 하면서, 마지막으로 카드를 올려놓는 사람이 되는 것이다. 도중까지 진행된 게임이 주어질 때, 두 플레이어가 남은 게임을 모두 최선의 전략으로 둔다고 가정하고 최종 승자를 판정하라.

예를 들어 다음 게임에서는 플레이어 BB가 이긴다.

  1. 플레이어 AA가 3을 낸다.
  2. 플레이어 BB가 5를 낸다.
  3. 플레이어 AA가 6을 낸다.
  4. 플레이어 BB가 6을 낸다.
  5. 플레이어 AA가 5를 낸다.
  6. 플레이어 BB가 6을 낸다.

플레이어 BB가 마지막 6을 낸 뒤 더미의 합은 정확히 3131이 되므로, 플레이어 AA는 더 이상 카드를 낼 수 없고 플레이어 BB가 승자가 된다.

입력

첫 줄에는 테스트 케이스의 수가 주어진다. 이어지는 각 줄은 하나의 테스트 케이스로, 도중까지 진행된 게임을 나타내는 00개 이상의 숫자열이다. 첫 번째 숫자는 플레이어 AA의 수, 두 번째 숫자는 플레이어 BB의 수이며, 이후로도 두 사람이 번갈아 낸 순서대로 이어진다. 각 게임을 두 플레이어 모두 최선의 전략으로 끝까지 진행했을 때 누가 이기는지 판정하라.

출력

각 게임마다 최종 승자를 나타내는 A 또는 B를 한 줄에 하나씩 출력한다.

예제1

  1. 예제 1

    입력
    5
    356656
    35665
    3566
    111126666
    552525
    
    예상 출력
    B
    B
    A
    A
    A