結果
問題 | No.539 インクリメント |
ユーザー | lloyz |
提出日時 | 2023-06-17 22:39:20 |
言語 | Python3 (3.12.2 + numpy 1.26.4 + scipy 1.12.0) |
結果 |
AC
|
実行時間 | 380 ms / 2,000 ms |
コード長 | 1,179 bytes |
コンパイル時間 | 246 ms |
コンパイル使用メモリ | 12,928 KB |
実行使用メモリ | 12,032 KB |
最終ジャッジ日時 | 2024-06-25 11:59:41 |
合計ジャッジ時間 | 1,653 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 30 ms
10,752 KB |
testcase_01 | AC | 35 ms
11,520 KB |
testcase_02 | AC | 228 ms
12,032 KB |
testcase_03 | AC | 380 ms
12,032 KB |
ソースコード
for _ in range(int(input())): S = input() n = len(S) if S.isdigit(): S = [S[i] for i in range(n)] for i in range(n - 1, -1, -1): if S[i] == '9': if i == 0: S[i] = '10' else: S[i] = '0' continue S[i] = str(int(S[i]) + 1) break ans = ''.join(S) else: L = [] ans = '' d = '' digit = False for i in range(n - 1, -1, -1): if S[i].isdigit(): digit = True d = S[i] + d if i == 0: m = len(d) d = str(int(d) + 1) if m > len(d): d = '0' * (m - len(d)) + d ans = d + ans else: if digit: m = len(d) d = str(int(d) + 1) if m > len(d): d = '0' * (m - len(d)) + d ans = d + ans ans = S[:i + 1] + ans break ans = S[i] + ans print(ans)