結果
問題 | No.1455 拡張ROTN |
ユーザー |
|
提出日時 | 2021-03-15 02:24:21 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 1,056 bytes |
コンパイル時間 | 1,842 ms |
コンパイル使用メモリ | 169,392 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-29 09:15:14 |
合計ジャッジ時間 | 2,747 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 22 |
ソースコード
#include <bits/stdc++.h> using namespace std; int main() { vector<string>T(26); T[0] = "CpCzNkSuTbEoA"; for (int i = 1; i < 26; i++) { for (int j = 0; j < T[i - 1].size(); j++) { if ('A' <= T[i - 1][j] && T[i - 1][j] <= 'Z') { T[i] += char('A' + (T[i - 1][j] - 'A' + 1) % 26); } if ('a' <= T[i - 1][j] && T[i - 1][j] <= 'z') { T[i] += char('a' + (T[i - 1][j] - 'a' + 1) % 26); } } } string S; cin >> S; long long N; cin >> N; for (int i = 0; i < S.size(); i++) { if ('0' <= S[i]&&S[i] <= '9') { if (10 > N + S[i] - '0') { cout << N + S[i] - '0'; } else { cout << T[((N + S[i] - '0') - 10) % 26]; } } if ('A' <= S[i] && S[i] <= 'Z') { cout<< char('A' + (S[i] - 'A'+N) % 26); } if ('a' <= S[i] && S[i] <= 'z') { cout << char('a' + (S[i] - 'a' + N) % 26); } } cout << endl; }