結果
問題 | No.274 The Wall |
ユーザー |
|
提出日時 | 2018-01-09 15:52:34 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 1,717 ms / 2,000 ms |
コード長 | 913 bytes |
コンパイル時間 | 93 ms |
コンパイル使用メモリ | 7,680 KB |
実行使用メモリ | 46,976 KB |
最終ジャッジ日時 | 2024-06-22 02:22:15 |
合計ジャッジ時間 | 16,060 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 22 |
コンパイルメッセージ
Syntax OK
ソースコード
N,M = $stdin.gets.chomp.split(" ").map{ |a| a.to_i }lines = []N.times {l,r = $stdin.gets.chomp.split(" ").map{ |a| a.to_i }lines << [l,r]}#p lines$connection = (0...lines.size).map { |i|l0,r0 = *lines[i]vl0,vr0 = M-1-r0,M-1-l0(0...lines.size).map { |j|next nil if i == jl1,r1 = *lines[j]ok1 = (r0 < l1 || r1 < l0)ok2 = (vr0 < l1 || r1 < vl0)casewhen ok1 && !ok2; +1when !ok1 && ok2; -1when ok1 && ok2; nilwhen !ok1 && !ok2puts "NO"exitend}}#p $connection$status = (0...N).map{ nil }def digger(i, expected = nil)if $status[i]if expectedif expected != $status[i]puts "NO"exitendendreturnend$status[i] = expected || +1$connection[i].each_with_index { |c,j|next unless cdigger(j,$status[i]*c)}end(0...N).each { |i|digger(i)}puts "YES"