結果
問題 |
No.2602 Real Collider
|
ユーザー |
![]() |
提出日時 | 2024-01-13 14:26:23 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,379 bytes |
コンパイル時間 | 360 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 91,264 KB |
最終ジャッジ日時 | 2024-09-28 01:27:09 |
合計ジャッジ時間 | 52,660 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 1 WA * 77 |
ソースコード
from fractions import Fraction def main(): q = int(input()) x1, y1, x2, y2, x3, y3 = map(int, input().split()) r = 0 if (x2 - x1) * (y3 - y1) == (x3 - x1) * (y2 - y1): Mx = max(x1, max(x2, x3)) mx = min(x1, min(x2, x3)) My = max(y1, max(y2, y3)) my = min(y1, min(y2, y3)) r = (Fraction(Mx - mx,2)) ** 2 + (Fraction(My - my,2)) ** 2 xg = Fraction(mx + Mx,2) yg = Fraction(my + My,2) for _ in range(q): x, y = map(int, input().split()) R = (xg - x) ** 2 + (yg - y) ** 2 if R <= r: print("Yes") else: print("No") else: det = (x2 - x1) * (y3 - y1) - (x3 - x1) * (y2 - y1) m = [[y3 - y1, -y2 + y1], [-x3+x1, x2 -x1]] f = [Fraction(x2 ** 2 + y2 ** 2,2) - Fraction(x1 ** 2 - y1 ** 2,2), Fraction(x3 ** 2 + y3 ** 2,2) - Fraction(x1 ** 2 - y1 ** 2,2)] e = [m[0][0] * f[0] + m[0][1] * f[1], m[1][0] * f[0] + m[1][1] * f[1]] xg = Fraction(e[0], det) yg = Fraction(e[1],det) r = (xg-x1)**2 + (yg-y1)**2 for _ in range(q): x, y = map(int, input().split()) R = (xg - x) ** 2 + (yg - y) ** 2 if R <= r: print("Yes") else: print("No") if __name__ == "__main__": main()