結果
問題 | No.199 星を描こう |
ユーザー |
|
提出日時 | 2016-07-19 23:21:45 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 123 ms / 2,000 ms |
コード長 | 497 bytes |
コンパイル時間 | 204 ms |
コンパイル使用メモリ | 7,552 KB |
実行使用メモリ | 13,056 KB |
最終ジャッジ日時 | 2024-12-30 03:50:27 |
合計ジャッジ時間 | 5,027 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 25 |
コンパイルメッセージ
Syntax OK
ソースコード
# (´;ω;`) require 'matrix' def cross(u,v) return v[0]*u[1]-u[0]*v[1]; end def calc(v) 5.times{|i| d1=cross(v[(i+1)%5]-v[i],v[(i+2)%5]-v[i]) d2=cross(v[(i+1)%5]-v[i],v[(i+3)%5]-v[i]) d3=cross(v[(i+1)%5]-v[i],v[(i+4)%5]-v[i]) return false if d1*d2>=0 || d2*d3>=0 } return true end point=[] 5.times{ point << Vector.elements(gets.split.map(&:to_i)) } point.permutation{|v| if calc(v) puts "YES";exit end } puts "NO"