結果
問題 |
No.3154 convex polygon judge
|
ユーザー |
![]() |
提出日時 | 2025-05-20 22:26:23 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 738 ms / 2,000 ms |
コード長 | 602 bytes |
コンパイル時間 | 467 ms |
コンパイル使用メモリ | 82,296 KB |
実行使用メモリ | 111,636 KB |
最終ジャッジ日時 | 2025-05-20 22:26:31 |
合計ジャッジ時間 | 7,604 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 44 |
ソースコード
from math import atan2 N = int(input()) points = [] for _ in range(N): x,y = list(map(int,input().split())) points.append((x,y)) mid_x = sum([x for x,y in points])/N mid_y = sum([y for x,y in points])/N pointss = [] for i in range(N): x,y = points[i] x -= mid_x y -= mid_y pointss.append((atan2(y,x),x,y)) pointss.sort() def check(x1,y1,x2,y2): return x1*y2 - y1*x2 <= 0 for i in range(N): _,x1,y1 = pointss[i] _,x2,y2 = pointss[(i+1)%N] _,x3,y3 = pointss[(i+2)%N] if(check(x2-x1,y2-y1,x3-x2,y3-y2)): print("No") exit() print("Yes")