結果
| 問題 | No.1486 ロボット |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2021-04-23 22:24:12 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,305 bytes |
| 記録 | |
| コンパイル時間 | 169 ms |
| コンパイル使用メモリ | 84,992 KB |
| 実行使用メモリ | 67,712 KB |
| 最終ジャッジ日時 | 2026-03-25 15:53:52 |
| 合計ジャッジ時間 | 1,589 ms |
|
ジャッジサーバーID (参考情報) |
judge1_1 / judge3_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 6 WA * 11 |
ソースコード
def gcd(a,b):
if b == 0:
return a
else:
return gcd(b,a%b)
def lcm(a, b):
return a * b // gcd (a, b)
A,B,C,D,E = map(int,input().split())
n = lcm(A+B,C+D)
flag1 = flag2 = True
ans = cnt = cnt1 = cnt2 = 1
end = min(n,E)
while cnt < end:
if flag1:
if cnt1%A == 0:
flag1 = False
cnt1 -= A
else:
if cnt1%B == 0:
flag1 = True
cnt1 -= B
if flag2:
if cnt2%C == 0:
flag2 = False
cnt2 -= C
else:
if cnt2%D == 0:
flag2 = True
cnt2 -= D
if flag1 and flag2:
ans += 1
cnt += 1
cnt1 += 1
cnt2 += 1
if n < E:
ans *= (E)//(n)
flag1 = flag2 = True
cnt = cnt1 = cnt2 = 1
while cnt < E%n:
if flag1:
if cnt1 % A == 0:
flag1 = False
cnt1 -= A
else:
if cnt1 % B == 0:
flag1 = True
cnt1 -= B
if flag2:
if cnt2 % C == 0:
flag2 = False
cnt2 -= C
else:
if cnt2 % D == 0:
flag2 = True
cnt2 -= D
if flag1 and flag2:
ans += 1
cnt += 1
cnt1 += 1
cnt2 += 1
print(ans)