結果
問題 |
No.1458 Segment Function
|
ユーザー |
![]() |
提出日時 | 2022-06-01 14:42:51 |
言語 | PyPy3 (7.3.15) |
結果 |
RE
|
実行時間 | - |
コード長 | 772 bytes |
コンパイル時間 | 228 ms |
コンパイル使用メモリ | 82,708 KB |
実行使用メモリ | 69,728 KB |
最終ジャッジ日時 | 2024-09-21 01:31:21 |
合計ジャッジ時間 | 3,348 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 7 WA * 1 RE * 24 |
ソースコード
P, N = map(int, input().split()) import sys sys.setrecursionlimit(10**9) def f(x): if x==0 or x==6 or x==9: return 6 elif x==1: return 2 elif x==2 or x==3 or x==5: return 5 elif x==4 or x==7: return 4 elif x == 8: return 7 elif x >= 10: return f(x//10)+f(x%10) else: return 1 + f(-x) n = [list() for _ in range(10)] for i in range(10): x = i n[i].append(x) while 1: y = f(x) if y == x: break else: n[i].append(y) x = y for i in range(min(N, 5*10**6)): if len(str(P)) == 1: id = i break P = f(P) else: print(P) exit() left = N - id print(n[P][i] if N-id<=(len(n[P])-1) else n[P][-1])