結果
| 問題 |
No.2628 Shrinkage
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-02-16 21:55:53 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 857 bytes |
| コンパイル時間 | 167 ms |
| コンパイル使用メモリ | 82,532 KB |
| 実行使用メモリ | 67,352 KB |
| 最終ジャッジ日時 | 2024-09-28 20:11:06 |
| 合計ジャッジ時間 | 2,040 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 1 WA * 23 RE * 4 |
ソースコード
def gcd(a,b):
while b!=0:
r=a%b
a,b=b,r
return abs(a)
def eval(xa,ya,xc,yc,xb,yb,xd,yd):
s=(xa-xb)*(yc-ya)-(ya-yb)*(xc-xa)
t=(xa-xb)*(yd-ya)-(ya-yb)*(xd-xa)
if s*t>0:return False
s=(xc-xd)*(ya-yc)-(yc-yd)*(xa-xc)
t=(xc-xd)*(yb-yc)-(yc-yd)*(xb-xc)
if s*t>0:return False
True
T=int(input())
for _ in range(T):
x1,y1,x2,y2,X1,Y1,X2,Y2=list(map(int,input().split()))
if eval(x1,y1,x2,y2,X1,Y1,X2,Y2):
print("No")
continue
diff_x1=x1-X1
diff_y1=y1-Y1
diff_x2=x2-X2
diff_y2=y2-Y2
g1=gcd(diff_x1,diff_y1)
g2=gcd(diff_x2,diff_y2)
diff_x1//=g1
diff_y1//=g1
diff_x2//=g2
diff_y2//=g2
if diff_x1==-diff_x2 and diff_y1==diff_y2:print("Yes")
elif diff_x1==diff_x2 and diff_y1==-diff_y2:print("Yes")
else:print("No")