[AtCoder] ABC 171 C – One Quadrillion and One Dalmatians

2020年12月14日

問題

方針

\( 10 \) 進数を \( 26 \) 進数に対応させるようにして考えます。

コード

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main() {
    ll N;
    cin >> N;
    string s = "";
    while (N != 0) {
        int c = N % 26;
        if (c == 0) {
            N = N / 26 - 1;
        } else {
            N /= 26;
        }
        s += (char)((c + 25) % 26 + 'a');
    }
    reverse(s.begin(), s.end());
    cout << s << "\n";
    return 0;
}