結果
問題 | No.757 チャンパーノウン定数 (2) |
ユーザー |
|
提出日時 | 2018-12-05 15:34:54 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 922 bytes |
コンパイル時間 | 169 ms |
コンパイル使用メモリ | 81,976 KB |
実行使用メモリ | 90,404 KB |
最終ジャッジ日時 | 2024-07-19 04:21:05 |
合計ジャッジ時間 | 5,080 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 -- * 1 |
other | AC * 26 TLE * 1 -- * 24 |
ソースコード
#!/usr/bin/env python3def solve(b, d):# find kd = list(map(int, reversed(d))) + [ 0 ] * 10k = 1while True:preserved = { i: d[i] for i in [ k - 1, k ] }d[k - 1] += kd[k] -= kfor i in range(k - 1, len(d) - 1):if i >= k and 0 <= d[i] < b:breakelse:if i >= k:preserved[i + 1] = d[i + 1]d[i + 1] += d[i] // bd[i] %= belse:for i, d_i in preserved.items():d[i] = d_ibreakk += 1# decode d to ints = dd = 0for c in reversed(s):d = b * d + c# remaining partd -= 1d1 = (k - 1 - d) % kfor _ in range(d1):d //= breturn (d1 == k - 1) + (d // k) % bif __name__ == '__main__':b = int(input())d = input()print(solve(b, d))