結果

問題 No.2564 衝突予測
ユーザー hatonobuhatonobu
提出日時 2023-12-02 16:20:35
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 557 ms / 2,000 ms
コード長 1,893 bytes
コンパイル時間 384 ms
コンパイル使用メモリ 82,304 KB
実行使用メモリ 83,948 KB
最終ジャッジ日時 2024-09-26 20:09:18
合計ジャッジ時間 6,775 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 9
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
from collections import deque,defaultdict
import itertools
import heapq
import bisect
import math

#sys.setrecursionlimit(10 ** 9)
input = lambda: sys.stdin.readline().rstrip()
ii = lambda: int(input())
mi = lambda: map(int, input().split())
ml = lambda: map(str, input().split())
li = lambda: list(mi())
li_st = lambda: list(map(str, input().split()))
lli = lambda n: [li() for _ in range(n)]
mod = 998244353

T = ii()
def check(x,y,d,xx,yy):
    if d == "U":
        if yy >= y:
            y += yy - y
        else:
            return x,y,False
    elif d == "D":
        if y >= yy:
            y -= y - yy
        else:
            return x,y,False
    elif d == "L":
        if x >= xx:
            x -= x - xx
        else:
            return x,y,False
    else:
        if xx >= x:
            x += xx - x
        else:
            return x,y,False
        
    return x,y,True


for i in range(T):
    x1,y1,d1 = ml()
    x2,y2,d2 = ml()
    x1,y1 = int(x1),int(y1)
    x2,y2 = int(x2),int(y2)
    ans = set()
    x,y,flag1 = check(x1,y1,d1,x2,y2)
    xx,yy,flag2 = check(x2,y2,d2,x1,y1)
    if flag1 and flag2:
        ans.add((x,y))
        ans.add((xx,yy))
        if len(ans) == 1:
            if abs(x1-x2) == abs(y1-y2):
                print("Yes")
            else:
                print("No")
        else:
            n = set()
            n.add(d1)
            n.add(d2)
            if len(n) == 1:
                print("No")
            else:
                if n == {"U","D"}:
                    if x == xx:
                        print("Yes")
                    else:
                        print("No")
                elif n == {"R","L"}:
                    if y == yy:
                        print("Yes")
                    else:
                        print("No")
                else:
                    print("No")
    else:
        print("No")
0