結果
| 問題 |
No.1004 サイコロの実装 (2)
|
| コンテスト | |
| ユーザー |
prd_xxx
|
| 提出日時 | 2020-03-06 21:47:55 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 577 bytes |
| コンパイル時間 | 400 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 10,880 KB |
| 最終ジャッジ日時 | 2024-10-14 05:58:18 |
| 合計ジャッジ時間 | 2,678 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 6 WA * 32 |
ソースコード
A,B,X,N = map(int,input().split())
m = [X%6]
while 1:
x = A*m[-1] + B
x %= 6
if x in m: break
m.append(x)
m = [1-n%2 for n in m]
m += m
tm,am = m[::2], m[1::2]
to,ao,te,ae = [0],[0],[0],[0]
ct = ca = 0
for t,a in zip(tm,am):
ct += t
ca += a
to.append(to[-1] + int(ct%2==1))
te.append(te[-1] + int(ct%2==0))
ao.append(ao[-1] + int(ca%2==1))
ae.append(ae[-1] + int(ca%2==0))
d,m = divmod(N,len(tm))
t_odd = to[-1]*d + to[m]
t_ev = te[-1]*d + te[m]
a_odd = ao[-1]*d + ao[m]
a_ev = ae[-1]*d + ae[m]
print(min(t_odd,t_ev), min(a_odd,a_ev))
prd_xxx