#include using namespace std; #ifdef LOCAL #include "settings/debug.cpp" #define _GLIBCXX_DEBUG #else #define Debug(...) void(0) #endif #define rep(i, n) for (int i = 0; i < (n); ++i) using ll = long long; using ull = unsigned long long; int main() { ll n; cin >> n; string ans = ""; function dfs = [&](ll n) { if (n == 1) { reverse(ans.begin(), ans.end()); cout << ans << endl; exit(0); } --n; if (n % 2 == 0) { ans += 'A'; dfs(n / 2); ans.pop_back(); } if (n % 3 == 0) { ans += 'B'; dfs(n / 3); ans.pop_back(); } }; dfs(n); return 0; }