結果

問題 No.2628 Shrinkage
ユーザー hiro1729hiro1729
提出日時 2024-02-16 22:21:49
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 1,046 bytes
コンパイル時間 203 ms
コンパイル使用メモリ 81,700 KB
実行使用メモリ 53,460 KB
最終ジャッジ日時 2024-02-16 22:21:51
合計ジャッジ時間 2,508 ms
ジャッジサーバーID
(参考情報)
judge11 / judge14
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 38 ms
53,460 KB
testcase_01 AC 40 ms
53,460 KB
testcase_02 AC 39 ms
53,460 KB
testcase_03 WA -
testcase_04 AC 38 ms
53,460 KB
testcase_05 AC 40 ms
53,460 KB
testcase_06 AC 38 ms
53,460 KB
testcase_07 AC 40 ms
53,460 KB
testcase_08 AC 42 ms
53,460 KB
testcase_09 AC 38 ms
53,460 KB
testcase_10 AC 39 ms
53,460 KB
testcase_11 AC 39 ms
53,460 KB
testcase_12 WA -
testcase_13 WA -
testcase_14 AC 37 ms
53,460 KB
testcase_15 WA -
testcase_16 AC 39 ms
53,460 KB
testcase_17 AC 40 ms
53,460 KB
testcase_18 AC 40 ms
53,460 KB
testcase_19 AC 39 ms
53,460 KB
testcase_20 AC 39 ms
53,460 KB
testcase_21 WA -
testcase_22 AC 38 ms
53,460 KB
testcase_23 AC 39 ms
53,460 KB
testcase_24 AC 39 ms
53,460 KB
testcase_25 AC 40 ms
53,460 KB
testcase_26 AC 38 ms
53,460 KB
testcase_27 WA -
権限があれば一括ダウンロードができます

ソースコード

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