結果
| 問題 | No.3658 Darumaka Number 2 |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-09-04 17:46:24 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 74 ms / 2,000 ms |
| + 659µs | |
| コード長 | 821 bytes |
| 記録 | |
| コンパイル時間 | 242 ms |
| コンパイル使用メモリ | 95,692 KB |
| 実行使用メモリ | 88,960 KB |
| 最終ジャッジ日時 | 2026-09-04 17:46:37 |
| 合計ジャッジ時間 | 6,745 ms |
|
ジャッジサーバーID (参考情報) |
judge2_0 / judge1_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 45 |
ソースコード
import sys
sys.set_int_max_str_digits(0)
N = input()
L = len(N)
if int(N[0]) < 4:
ans = ['5']*(L - 1)
exit(print(''.join(ans)))
elif int(N[0]) > 5:
ans = ['5']*(L)
exit(print(''.join(ans)))
ans = []
five = False
for i in range(L):
nokori = L - i
n = int(N[i])
if n > 5:
for _ in range(nokori):
ans.append('5')
break
elif n < 4:
cnt = 0
while ans:
rm = ans.pop()
if rm == '5':
five = True
ans.append('4')
break
else:
cnt += 1
# cnt 分 5 を入れる
if not five:
cnt -= 1
for _ in range(cnt + nokori):
ans.append('5')
break
else:
ans.append(str(n))
print(''.join(ans))