n4okins / ABC086C - Traveling

Created Sun, 14 Jul 2024 05:25:47 +0900 Modified Sun, 14 Jul 2024 05:25:47 +0900
N = int(input())
t, x, y = 0, 0, 0
for i in range(N):
    # 入力読み取り
    # 今回の時間 ti 位置 (xi, yi)
    ti, xi, yi = map(int, input().split())

    # 前状態からの必要移動距離 d を求める
    d = abs(x - xi) + abs(y - yi)

    # 1. dが前状態から今回までの時間ti - t以内であること (前の状態から移動可能であること)
    # 2. dとti-tの偶奇が一致していること(偶奇が一致しなければ移動不可)
    if (d <= (ti - t)) and ((d % 2) == ((ti - t) % 2)):
        # 移動可能なので状態を更新して次の状態へ
        t, x, y = ti, xi, yi
    else:
        # 移動不可なのでNoでbreak
        print("No")
        break
else:
    # breakしなければYes
    print("Yes")