結果

問題 No.1935 Water Simulation
ユーザー titan23
提出日時 2022-06-12 21:47:04
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 41 ms / 2,000 ms
コード長 828 bytes
コンパイル時間 279 ms
コンパイル使用メモリ 82,196 KB
実行使用メモリ 59,532 KB
最終ジャッジ日時 2024-09-24 07:16:07
合計ジャッジ時間 2,432 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 29
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input = lambda: sys.stdin.readline().rstrip()

##################

v1, v2, v3, v4, n = map(int, input().split())
st = set((v1, 0, 0, 0, 0))
now = [v1, 0, 0, 0, 0]
li = [tuple(now)]
for i in range(n):
  if i % 4 == 0:
    delta = min(now[0], v2-now[1])
    now[0] -= delta
    now[1] += delta
  if i % 4 == 1:
    delta = min(now[1], v3-now[2])
    now[1] -= delta
    now[2] += delta
  if i % 4 == 2:
    delta = min(now[2], v4-now[3])
    now[2] -= delta
    now[3] += delta
  if i % 4 == 3:
    delta = min(now[3], v1-now[0])
    now[3] -= delta
    now[0] += delta
  now[4] += 1
  now[4] %= 4
  t = tuple(now)
  if t in st:
    period_t = tuple(now)
    break
  st.add(tuple(now))
  li.append(tuple(now))
else:
  print(*now[:-1])
  exit()

indx = li.index(period_t)
P = li[indx:]
print(*P[(n-indx) % len(P)][:-1])
0