#include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); int N,K; cin >> N >> K; int inf = 1001001; vector> dp0(N+1,vector(8)),dp1 = dp0; dp0.at(N).at(7) = 1; for(int i=N-1; i>=0; i--){ for(int k=0; k<8; k++){ int to = k/2,to2 = k/2+4; dp0.at(i).at(to) += dp0.at(i+1).at(k); dp1.at(i).at(to) += dp1.at(i+1).at(k); if(to2 == 6) dp1.at(i).at(to2) += dp0.at(i+1).at(k); else dp0.at(i).at(to2) += dp0.at(i+1).at(k); dp1.at(i).at(to2) += dp1.at(i+1).at(k); dp0.at(i).at(to) = min(inf,dp0.at(i).at(to)); dp0.at(i).at(to2) = min(inf,dp0.at(i).at(to2)); dp1.at(i).at(to) = min(inf,dp1.at(i).at(to)); dp1.at(i).at(to2) = min(inf,dp1.at(i).at(to2)); } } string answer = ""; bool ok = false; for(int i=0; i sum){ answer += 'M'; if(K > sum2 && K <= sum3) answer += "MA",i += 2,ok = true,K -= sum2; else K -= sum; } else answer += 'A'; } else{ int sum = 0; for(int k=0; k<4; k++) sum += dp1.at(i).at(k)+dp0.at(i).at(k); if(K > sum) K -= sum,answer += 'M'; else answer += 'A'; } } cout << answer << endl; }