만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

성 함락시키기

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

요약
B가 매 턴 두 길 중 한 곳에 대포를 쏠 때, A가 병사들을 배치해 성에 도달할 수 있는지 판정합니다.
난이도

보통10점 중 7점

유형
게임 이론, 동적 계획법
정답자
아직 제출이 없습니다

문제

A와 B 두 사람이 성 함락 게임을 한다. 턴제 게임이며 A와 B가 번갈아 한 턴씩 진행한다. 게임은 A의 턴으로 시작한다. 규칙은 다음과 같다.

A는 군사로 성을 함락하는 것이 목표이고, B는 대포로 성을 지키는 것이 목표이다. A에게는 nn명의 군사가 있으며, 군사 ii (1≤i≤n1 \le i \le n)는 성에서 did_i m 떨어져 있다. 성으로 들어가는 길은 두 개이다. A는 자신의 턴마다 각 군사를 두 길 중 한 곳에 배치하거나 배치하지 않을 수 있다. 길에 배치된 병사는 다른 길로 옮기거나 회수할 수 있다. 군사를 어느 길에 배치할지는 A가 자유롭게 정할 수 있지만, 성으로부터의 거리 did_i는 바꿀 수 없다. 적어도 한 명의 군사는 길에 배치되어야 한다.

B는 자신의 턴에 두 길 중 한 곳에 대포를 쏠 수 있다. B가 대포를 쏘면 그 길에 있는 군사는 거리와 관계없이 모두 죽는다. 대포를 쏘고 살아남은 A의 군사는 모두 1 m씩 성에 가까워진다. 군사 한 명이라도 성에 도달하면 A가 승리하고 게임이 끝난다. B가 대포로 A의 군사를 모두 죽이면 B가 승리하고 게임이 끝난다.

A와 B가 모두 최적의 선택을 한다고 할 때, 주어진 초기 위치 did_i로 누가 승리하는지 판단하라.

입력

첫 줄에 군사의 수 nn이 주어진다. (1≤n≤1,0001 \le n \le 1,000)

두 번째 줄부터 n+1n+1번째 줄까지 각 줄에 정수 did_i가 주어진다. 이는 ii번째 군사가 성에서 떨어진 거리(미터 단위)이다. (1≤di≤201 \le d_i \le 20)

출력

A가 승리하면 A를, B가 승리하면 B를 출력하라.

예제2

  1. 예제 1

    입력
    2
    1
    1
    
    예상 출력
    A
    
  2. 예제 2

    입력
    3
    1
    2
    3
    
    예상 출력
    B