結果

問題 No.139 交差点
ユーザー lam6er
提出日時 2025-03-20 21:16:58
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 41 ms / 5,000 ms
コード長 521 bytes
コンパイル時間 360 ms
コンパイル使用メモリ 82,528 KB
実行使用メモリ 53,988 KB
最終ジャッジ日時 2025-03-20 21:17:51
合計ジャッジ時間 2,443 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 28
権限があれば一括ダウンロードができます

ソースコード

diff #

n, l = map(int, input().split())
crosswalks = [tuple(map(int, input().split())) for _ in range(n)]

current_time = 0
prev_pos = 0

for x, w, t in crosswalks:
    distance_to_x = x - prev_pos
    current_time += distance_to_x
    prev_pos = x

    s = t - w
    cycle = 2 * t
    k = current_time // cycle
    if current_time <= k * cycle + s:
        start = current_time
    else:
        k += 1
        start = k * cycle

    current_time = start + w
    prev_pos += w

current_time += l - prev_pos

print(current_time)
0