結果

問題 No.1149 色塗りゲーム
ユーザー mai
提出日時 2020-08-07 21:53:17
言語 Ruby
(3.4.1)
結果
WA  
実行時間 -
コード長 658 bytes
コンパイル時間 220 ms
コンパイル使用メモリ 7,424 KB
実行使用メモリ 29,408 KB
平均クエリ数 3.02
最終ジャッジ日時 2024-07-17 04:37:07
合計ジャッジ時間 10,378 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 3 WA * 47
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

N = gets.to_i
field = [nil]*N

def mid(len, i)
  return [len, i] if len <= 2
  return [2-(len%2), i+(len-1)/2]
end

fill = lambda do |a|
  field[a[1]...(a[1]+a[0])] = [true]*a[0]
end

111.times do
  ans = []
  k = 0
  len = 0
  field.each_with_index do |e,i|
    unless e.nil?
      k = i + 1
      next if len == 0
      ans = mid(len, i)
      break
    end
    len += 1
  end
  ans = mid(len, k) if ans.empty? && len > 0
  fill.call(ans)
  # puts field.inspect
  
  puts "#{ans[0]} #{ans[1]+1}"
  STDOUT.flush
  t = gets.to_i
  break if [0,1,2].include?(t)
  
  ans = gets.chomp.split.map(&:to_i)
  ans[1] -= 1
  fill.call(ans)
  # puts field.inspect
end
0