結果

問題 No.327 アルファベット列
ユーザー MJDigitMJDigit
提出日時 2015-12-26 01:24:57
言語 C++11
(gcc 11.4.0)
結果
WA  
実行時間 -
コード長 883 bytes
コンパイル時間 564 ms
コンパイル使用メモリ 64,896 KB
実行使用メモリ 4,348 KB
最終ジャッジ日時 2023-10-19 03:54:05
合計ジャッジ時間 2,105 ms
ジャッジサーバーID
(参考情報)
judge11 / judge14
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1 ms
4,348 KB
testcase_01 AC 1 ms
4,348 KB
testcase_02 AC 1 ms
4,348 KB
testcase_03 AC 2 ms
4,348 KB
testcase_04 AC 1 ms
4,348 KB
testcase_05 WA -
testcase_06 WA -
testcase_07 WA -
testcase_08 WA -
testcase_09 WA -
testcase_10 WA -
testcase_11 WA -
testcase_12 WA -
testcase_13 WA -
testcase_14 WA -
testcase_15 WA -
testcase_16 WA -
testcase_17 WA -
testcase_18 WA -
testcase_19 WA -
testcase_20 WA -
testcase_21 WA -
testcase_22 WA -
testcase_23 WA -
testcase_24 WA -
testcase_25 WA -
testcase_26 WA -
testcase_27 WA -
testcase_28 WA -
testcase_29 WA -
testcase_30 AC 2 ms
4,348 KB
testcase_31 WA -
testcase_32 WA -
testcase_33 WA -
testcase_34 WA -
testcase_35 WA -
testcase_36 WA -
testcase_37 WA -
testcase_38 WA -
testcase_39 WA -
testcase_40 WA -
testcase_41 WA -
testcase_42 WA -
testcase_43 WA -
testcase_44 WA -
testcase_45 WA -
testcase_46 WA -
testcase_47 WA -
testcase_48 WA -
testcase_49 WA -
testcase_50 WA -
testcase_51 WA -
testcase_52 WA -
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <iostream>
#include <cmath>
#include <list>

using namespace std;

typedef unsigned long long uint64;

int main() {
    const char alp[] =
      {'A','B','C','D','E','F','G','H','I','J','K','L','M',
       'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
    uint64 dec;
    int digits;
    list<char> out;

    cin >> dec;

    if (dec < 26) {
        out.push_front(alp[dec % 26]);
    } else {
        for (digits = 1; dec >= 26 * ((uint64) pow(26, digits) - 1) / 25; digits++);
        do {
            if (digits == 1) {
                out.push_front(alp[dec % 27 - 1]);
            } else {
                out.push_front(alp[dec % 26]);
            }
            dec /= 26;
        } while (--digits > 0);
    }

    list<char>::iterator it = out.begin();
    while (it != out.end()) {
      cout << *it;
      ++it;
    }
    cout << endl;

    return 0;
}
0