#include "bits/stdc++.h" using namespace std; #define rep(i, n) for (int i = 0; i < (n); i ++) int grundy(vector& v) { //for (int i = 0; i < v.size(); i ++) cout << v[i] << ' '; //cout << endl; bool f = true; for (int i = 0; i < v.size(); i ++) if (v[i] != 1) f = false; if (f) return 0; set s; vector u; for (int i = 0; i < v.size(); i ++) { if (v[i] == 1) continue; u.clear(); for (int j = 0; j < v.size(); j ++) if (i != j) u.push_back(v[j]); if (v[i] % 2 == 0) { u.push_back(v[i] / 2); u.push_back(v[i] / 2); s.insert(grundy(u)); } u.clear(); for (int j = 0; j < v.size(); j ++) if (i != j) u.push_back(v[j]); if (v[i] % 2 == 1 && v[i] > 2) { u.push_back(v[i] / 2); u.push_back(v[i] / 2 + 1); s.insert(grundy(u)); } u.clear(); for (int j = 0; j < v.size(); j ++) if (i != j) u.push_back(v[j]); if (v[i] % 3 == 0 && v[i] > 3) { u.push_back(v[i] / 3); u.push_back(v[i] / 3); u.push_back(v[i] / 3); s.insert(grundy(u)); } u.clear(); for (int j = 0; j < v.size(); j ++) if (i != j) u.push_back(v[j]); if (v[i] % 3 == 1 && v[i] > 3) { u.push_back(v[i] / 3); u.push_back(v[i] / 3); u.push_back(v[i] / 3 + 1); s.insert(grundy(u)); } u.clear(); for (int j = 0; j < v.size(); j ++) if (i != j) u.push_back(v[j]); if (v[i] % 3 == 2 && v[i] > 3) { u.push_back(v[i] / 3); u.push_back(v[i] / 3 + 1); u.push_back(v[i] / 3 + 1); s.insert(grundy(u)); } } int g = 0; while (s.count(g) != 0) g ++; cout << "g = " << g << endl; return g; } int main() { int n; cin >> n; vector ans; ans.push_back(n); cout << (grundy(ans) ? "A" : "B") << endl; return 0; }