結果
問題 | No.539 インクリメント |
ユーザー |
|
提出日時 | 2017-06-30 22:53:17 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 5 ms / 2,000 ms |
コード長 | 1,298 bytes |
コンパイル時間 | 579 ms |
コンパイル使用メモリ | 83,488 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-10-04 20:53:50 |
合計ジャッジ時間 | 1,450 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 3 |
ソースコード
#include <cstdio>#include <iostream>#include <algorithm>#include <string>#include <cstring>#include <vector>#include <queue>#include <set>#include <map>#include <cmath>#include <iomanip>using namespace std;typedef pair<int, int> P;#define rep(i, n) for (int i=0; i<(n); i++)#define all(c) (c).begin(), (c).end()#define uniq(c) c.erase(unique(all(c)), (c).end())#define _1 first#define _2 second#define pb push_back#define INF 1145141919#define MOD 1000000007int T;signed main() {ios::sync_with_stdio(false); cin.tie(0);cin >> T;string s;getline(cin, s);rep(_, T) {getline(cin, s);int offset = -1;rep(i, s.length()) {char c = s[i];if (c >= '0' && c <= '9') offset = i;}if (offset == -1) {cout << s << "\n";continue;}bool ok = false;while (offset >= 0 && s[offset] >= '0' && s[offset] <= '9') {if (s[offset] != '9') {s[offset]++;ok = true;break;}s[offset] = '0';offset--;}string o = "";if (ok) o = s;else {rep(i, offset+1) {if (i >= s.length()) continue;o += s[i];}o += '1';for (int i=offset+1; i<s.length(); i++) o += s[i];}cout << o << "\n";}return 0;}