結果
| 問題 |
No.435 占い(Extra)
|
| コンテスト | |
| ユーザー |
🐬hec
|
| 提出日時 | 2016-05-04 14:30:22 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
MLE
|
| 実行時間 | - |
| コード長 | 897 bytes |
| コンパイル時間 | 467 ms |
| コンパイル使用メモリ | 82,048 KB |
| 実行使用メモリ | 79,508 KB |
| 最終ジャッジ日時 | 2024-10-08 11:30:48 |
| 合計ジャッジ時間 | 25,371 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | MLE * 4 |
| other | MLE * 32 |
ソースコード
import sys
#!/usr/bin/env python3
num_idx=[0,0,1,0,2,5,0,4,3,0]
two_idx=[1,2,4,8,7,5]
t=int(sys.stdin.readline())
for loop in range(t):
[n,x,a,b,m]=map(int,sys.stdin.readline().split())
ans=x%10
num=n-1
den=1
two=0
three=0
add=x%10
for i in range(n-1):
tmp=num;
while tmp%3==0:
tmp/=3
three+=1
two+=(num_idx[int(tmp%9)]);
tmp=den;
while tmp%3==0:
tmp/=3
three-=1
two+=(6-num_idx[int(tmp%9)]);
num-=1
den+=1
x=((x^a)+b)%m
s=x%10
add+=s
if three >=2:
continue
cur=s*two_idx[two%6]
if three ==1:
cur*=3
ans+=cur%9
ans%=9
if add !=0 and ans ==0:
ans=9;
sys.stdout.write(str(ans))
sys.stdout.write('\n')
🐬hec