結果

問題 No.3154 convex polygon judge
ユーザー catupper
提出日時 2025-05-20 21:51:02
言語 PyPy3
(7.3.15)
結果
RE  
実行時間 -
コード長 546 bytes
コンパイル時間 403 ms
コンパイル使用メモリ 82,432 KB
実行使用メモリ 97,792 KB
最終ジャッジ日時 2025-05-20 21:51:11
合計ジャッジ時間 7,256 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample RE * 3
other RE * 44
権限があれば一括ダウンロードができます

ソースコード

diff #

N = int(input())
points = [tuple(map(int,input().split())) for _ in range(N)]
points.sort()

from functools import cmp_to_key

def ccw(a,b,c):
  ax,ay = a
  bx,by = b
  cx,cy = c
  bx -= ax
  cx -= ax
  by -= ay
  cy -= ay
  crs = bx*cy-cx*by
  if crs > 0:return 1
  if crs < 0: return -1
  return 0


p0 = points[0]

def cmp(a,b):
  return ccw(p0, a, b)

ps = sorted(points[1:], cmp_to_key(cmp))
ps.append(p0)

ccws=[ccw(ps[i-2],ps[i-1],ps[i]) for i in renge(N)]
if min(ccws) == max(ccws) and cces[0] != 0:
  print("Yes")
else:
  print("No")
  
0