結果
問題 | No.245 貫け! |
ユーザー |
![]() |
提出日時 | 2016-05-07 20:41:44 |
言語 | Python2 (2.7.18) |
結果 |
AC
|
実行時間 | 1,485 ms / 5,000 ms |
コード長 | 734 bytes |
コンパイル時間 | 487 ms |
コンパイル使用メモリ | 7,040 KB |
実行使用メモリ | 6,272 KB |
最終ジャッジ日時 | 2024-10-05 10:25:41 |
合計ジャッジ時間 | 13,476 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 16 |
ソースコード
N=int(raw_input()) points=[map(int,raw_input().split()) for i in range(N)] ans=1 for i in range(N): for j in range(i+1,N): for k in range(2): for l in range(2): cnt=0 x,y=points[i][k*2],points[i][k*2+1] x2,y2=points[j][l*2],points[j][l*2+1] if (x,y)==(x2,y2): continue vx,vy=x2-x,y2-y for t in range(N): a,b,c,d=points[t] wx,wy=a-x,b-y zx,zy=c-x,d-y det1=vy*wx-vx*wy det2=vy*zx-vx*zy if det1*det2<=0: cnt+=1 ans=max(cnt,ans) print ans