#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; const int mod = 1e9 + 7; const ll infll = (1LL << 62) - 1; const int inf = (1 << 30) - 1; #define rep(i,n) for (int i=0; i < (n); i++) typedef double D; // 座標値の型。doubleかlong doubleを想定 typedef complex P; // Point typedef pair L; // Line typedef vector

VP; const D EPS = 1e-9; // 許容誤差。問題によって変える #define X real() #define Y imag() #define LE(n,m) ((n) < (m) + EPS) #define GE(n,m) ((n) + EPS > (m)) #define EQ(n,m) (abs((n)-(m)) < EPS) D dot(P a, P b) { return (conj(a)*b).X; } int main(){ cout << fixed << setprecision(10); int N; cin >> N; vectorC(N); rep(i,N)cin >> C[i]; ll sm=0; rep(i,N)sm+=C[i]; if(sm%2==0){ cout << "B" << endl; } else{ int c=0; rep(i,N){ if(C[i]>=3){ cout << "B" << endl; return 0; } if(C[i]>=2)c++; } if(c>=2)cout << "B" << endl; else cout << "A" << endl; } return 0; }