結果

問題 No.327 アルファベット列
コンテスト
ユーザー nksk38
提出日時 2017-07-08 21:40:29
言語 C++11
(gcc 15.2.0 + boost 1.89.0)
コンパイル:
g++-15 -O2 -lm -std=gnu++11 -Wuninitialized -DONLINE_JUDGE -o a.out _filename_
実行:
./a.out
結果
WA  
実行時間 -
コード長 799 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 890 ms
コンパイル使用メモリ 104,944 KB
実行使用メモリ 7,976 KB
最終ジャッジ日時 2026-04-23 04:57:16
合計ジャッジ時間 2,564 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge2_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 1 WA * 49
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<string>
#include<queue>
#include<vector>
#include<functional>
#include<cmath>
#include<map>
#include<stack>
#include<set>
#include<numeric>
#include<limits>

using namespace std;
typedef long long ll;
typedef pair<int, int> pi;
typedef pair<ll, ll> pl;

vector<int> q;

int main()
{
	ll N;
	cin >> N;
	
	if (N < 26) {
		printf("%c\n",'A'+N);
		return 0;
	}

	int n = N;
	bool flag = 1;
	while (1) {
		if (N / 26 - 1 < 26) {
			q.push_back((N / 26) - 1);
			if (N % 26 < 26) {
				q.push_back(N % 26);
			}
			N /= 26;
			if (N < 26)break;
		}
		else {
			flag = 0;
			N /= 26;
		}
	}

	if (!flag) {
		if (n % 26 < 26)
			q.push_back(n % 26);
	}

	for (int i = 0; i < q.size(); i++)
		printf("%c",'A'+q[i]);
	cout << endl;
	return 0;
}
0