結果

問題 No.2628 Shrinkage
ユーザー hiro1729hiro1729
提出日時 2024-02-16 22:14:04
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 936 bytes
コンパイル時間 208 ms
コンパイル使用メモリ 82,524 KB
実行使用メモリ 54,876 KB
最終ジャッジ日時 2024-09-28 20:50:41
合計ジャッジ時間 1,929 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 37 ms
52,484 KB
testcase_01 WA -
testcase_02 WA -
testcase_03 WA -
testcase_04 WA -
testcase_05 WA -
testcase_06 WA -
testcase_07 WA -
testcase_08 WA -
testcase_09 WA -
testcase_10 WA -
testcase_11 WA -
testcase_12 WA -
testcase_13 WA -
testcase_14 WA -
testcase_15 WA -
testcase_16 WA -
testcase_17 WA -
testcase_18 WA -
testcase_19 WA -
testcase_20 WA -
testcase_21 WA -
testcase_22 WA -
testcase_23 WA -
testcase_24 WA -
testcase_25 WA -
testcase_26 WA -
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) else "No")
0