結果

問題 No.2628 Shrinkage
ユーザー hiro1729
提出日時 2024-02-16 22:23:01
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 1,050 bytes
コンパイル時間 323 ms
コンパイル使用メモリ 82,208 KB
実行使用メモリ 54,896 KB
最終ジャッジ日時 2024-09-28 20:57:16
合計ジャッジ時間 2,101 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 20 WA * 8
権限があれば一括ダウンロードができます

ソースコード

diff #

for _ in range(int(input())):
	x1, y1, x2, y2, X1, Y1, X2, Y2 = map(int, input().split())
	a1 = (Y1 - y1) * (X2 - x2) * x1 - (Y2 - y2) * (X1 - x1) * x2 - (y1 - y2) * (X1 - x1) * (X2 - x2)
	a2 = (Y1 - y1) * (X2 - x2) - (Y2 - y2) * (X1 - x1)
	if a2 == 0:
		if a1 == 0:
			# 4点が1直線上にある
			if x1 == x2 == X1 == X2:
				# y軸に平行なとき
				b1 = y1 * Y2 - y2 * Y1
				b2 = y1 - y2 - Y1 + Y2
				if (y1 * b2 < Y1 * b2 < b1 or y1 * b2 > Y1 * b2 > b1) and (y2 * b2 < Y2 * b2 < b1 or y2 * b2 > Y2 * b2 > b1):
					print("Yes")
				else:
					print("No")
			else:
				# そうでないとき
				b1 = x1 * X2 - x2 * X1
				b2 = x1 - x2 - X1 + X2
				if (x1 * b2 < X1 * b2 < b1 or x1 * b2 > X1 * b2 > b1) and (x2 * b2 < X2 * b2 < b1 or x2 * b2 > X2 * b2 > b1):
					print("Yes")
				else:
					print("No")
		else:
			print("No")
		continue
	print("Yes" if (X1 - x1) * (a1 - a2 * x2) == (X2 - x2) * (a1 - a2 * x1) and (x1 * a2 <= X1 * a2 <= a1 or x1 * a2 > X1 * a2 > a1) and (x2 * a2 <= X2 * a2 <= a1 or x2 * a2 > X2 * a2 > a1) else "No")
0