#include using namespace std; typedef long long ll; #define rep(i,n) for(int i=0;i>s; ll n; cin>>n; while (n > 0) { string next_s; bool found = false; //数字がなくなるまで愚直にやり //数字がなくなった時点でn%26周期で出力する for (auto c : s) { if ('a' <= c && c <= 'z') next_s.push_back((c - 'a' + 1) % 26 + 'a'); else if ('A' <= c && c <= 'Z') next_s.push_back((c - 'A' + 1) % 26 + 'A'); else if ('0' <= c && c <= '8') { found = true; next_s.push_back(c + 1); } else { found = true; next_s += "CpCzNkSuTbEoA"; } } --n; s = next_s; if (!found) break; } for (auto c : s) { char ans; if ('a' <= c && c <= 'z') ans = (c - 'a' + n % 26) % 26 + 'a'; else if ('A' <= c && c <= 'Z') ans = (c - 'A' + n % 26) % 26 + 'A'; else ans = c; cout << char(ans); } cout << endl; return 0; }