結果
問題 | No.539 インクリメント |
ユーザー |
![]() |
提出日時 | 2017-06-30 22:51:18 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 80 ms / 2,000 ms |
コード長 | 2,377 bytes |
コンパイル時間 | 1,180 ms |
コンパイル使用メモリ | 160,908 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-10-04 20:51:14 |
合計ジャッジ時間 | 2,130 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 3 |
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:23:28: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 23 | #define Int(x) int x; scanf("%lld", &x); | ~~~~~^~~~~~~~~~~~ main.cpp:37:5: note: in expansion of macro ‘Int’ 37 | Int(n); | ^~~
ソースコード
#include <bits/stdc++.h>using namespace std;#define INF 1001000100010001000#define MOD 1000000007#define EPS 1e-10#define int long long#define rep(i, N) for (int i = 0; i < N; i++)#define Rep(i, N) for (int i = 1; i < N; i++)#define For(i, a, b) for (int i = (a); i < (b); i++)#define pb push_back#define eb emplece_back#define mp make_pair#define i_i pair<int, int>#define vi vector<int>#define vvi vector<vi >#define vb vector<bool>#define vvb vector<vb >#define vp vector< i_i >#define Edge pair< i_i, int>#define all(a) (a).begin(), (a).end()#define Int(x) int x; scanf("%lld", &x);#define int2(x, y) int x, y; scanf("%lld %lld", &x, &y);#define fir first#define sec second#define ffir first.first#define fsec first.second#define sfir second.first#define ssec second.second//int dxy[5] = {0, 1, 0, -1, 0};// assignsigned main(){Int(n);getchar();rep(i, n) {string input;char yui;yui = getchar();while (yui != '\n') {input.pb(yui);yui = getchar();}// cout << input << endl;//cin >> input;int back = input.size();rep(i, input.size()) {if ('0' <= input[input.size()-1-i] &&input[input.size()-1-i] <= '9') {back = input.size()-1-i;break;}}if (back == input.size()) {cout << input << endl;return 0;}string num;int front = -1;for (int j = back; j >= 0; j--) {if ('0' <= input[j] &&input[j] <= '9') {num.pb(input[j]);} else {front = j;break;}}//cout << back << " " << front << endl;rep(i, front+1) {cout << input[i];}bool fl = true;rep(i, num.size()) {if (num[i] == '9') {num[i] = '0';} else {num[i]++;fl = false;break;}}reverse(all(num));if (fl) {cout << 1;}cout << num;for (int i = back+1; i < input.size(); i++) {cout << input[i];}cout << endl;}return 0;}