結果
問題 | No.1595 The Final Digit |
ユーザー | tamato |
提出日時 | 2021-07-09 22:07:12 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 41 ms / 2,000 ms |
コード長 | 781 bytes |
コンパイル時間 | 200 ms |
コンパイル使用メモリ | 82,288 KB |
実行使用メモリ | 54,144 KB |
最終ジャッジ日時 | 2024-07-01 16:31:52 |
合計ジャッジ時間 | 1,653 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 17 |
ソースコード
mod = 1000000007 eps = 10**-9 def main(): import sys input = sys.stdin.readline p, q, r, K = map(int, input().split()) p %= 10 q %= 10 r %= 10 K -= 3 X = [p, q, r] seen = [-1] * 1001 pqr = p*100 + q * 10 + r PQR = [pqr] seen[pqr] = 0 while True: X.append((X[-1] + X[-2] + X[-3])%10) pqr_new = X[-3] * 100 + X[-2] * 10 + X[-1] if seen[pqr_new] == -1: seen[pqr_new] = seen[pqr] + 1 pqr = pqr_new PQR.append(pqr) else: L = seen[pqr] + 1 pqr = pqr_new break s = (K - seen[pqr] + L)%L t = seen[pqr] + s print(PQR[t]%10) #print(X) #print(PQR) #print(len(PQR), L) if __name__ == '__main__': main()