結果
| 問題 |
No.1339 循環小数
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2021-01-16 10:42:34 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 482 bytes |
| コンパイル時間 | 162 ms |
| コンパイル使用メモリ | 82,072 KB |
| 実行使用メモリ | 129,824 KB |
| 最終ジャッジ日時 | 2024-11-27 10:41:01 |
| 合計ジャッジ時間 | 8,341 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | WA * 1 |
| other | WA * 36 |
ソースコード
# X^K ≡ Y (mod M) となるような K を求める
def solve(X, Y, M):
D = {}
sq = int(M**.5)+1
# Baby-step
Z = 1
for i in range(sq):
Z = Z * X % M
D[Z] = i+1
if Y in D:
return D[Y]
# Giant-step
R = pow(Z, M-2, M) # R = X^(-sq)
for i in range(1, sq+1):
Y = Y * R % M
if Y in D:
return D[Y] + i*sq
return -1
t = int(input())
for _ in range(t):
n = int(input())
solve(10,1,n)