結果

問題 No.1477 Lamps on Graph
コンテスト
ユーザー Takeky0
提出日時 2021-05-20 19:09:59
言語 Crystal
(1.19.1)
コンパイル:
crystal build -Donline_judge -o a.out --release --no-debug _filename_
実行:
./a.out
結果
WA  
実行時間 -
コード長 569 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 12,029 ms
コンパイル使用メモリ 340,276 KB
実行使用メモリ 20,448 KB
最終ジャッジ日時 2026-04-26 10:03:51
合計ジャッジ時間 20,917 ms
ジャッジサーバーID
(参考情報)
judge2_1 / judge1_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 5 WA * 33
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

n, m = read_line.split.map(&.to_i)
a = read_line.split.map(&.to_i)
a = (0...n).map { |i| {a[i], i} }.sort
graph = (1..n).map { [] of Int32 }
m.times {
  u, v = read_line.split.map(&.to_i.pred)
  graph[u] << v
  graph[v] << u
}
k = read_line.to_i
c = read_line.split.map(&.to_i)
b = [0]*n
c.each { |i| b[i.pred] = 1 }
ans = Array(Int32).new
a.each do |(ai, i)|
  if b[i] == 0
    next
  end
  b[i] = 0
  graph[i].each do |j|
    if ai < a[j][0]
      b[j] = 1 - b[j]
    end
  end
  ans << i.succ
end
if b.sum > 0
  puts -1
else
  puts ans.size
  puts ans.join("\n")
end
0