結果
| 問題 |
No.679 不思議マーケット
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-04-28 00:18:23 |
| 言語 | Ruby (3.4.1) |
| 結果 |
AC
|
| 実行時間 | 252 ms / 2,000 ms |
| コード長 | 555 bytes |
| コンパイル時間 | 47 ms |
| コンパイル使用メモリ | 7,552 KB |
| 実行使用メモリ | 12,928 KB |
| 最終ジャッジ日時 | 2024-06-27 23:03:12 |
| 合計ジャッジ時間 | 2,692 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 18 |
コンパイルメッセージ
Main.rb:8: warning: assigned but unused variable - r Syntax OK
ソースコード
def ascan; gets.split.map(&:to_i);end
N,M = ascan
items = {}
M.times do
g,r = ascan
hh = ascan
items[g] = hh
end
ans = {}
det = {}
dfs = lambda do |id|
next ans[id] if ans[id]
item = items[id]
next ans[id] = 1 if !item
next false if det[id]
det[id] = true
ret = 1
item.each do |e|
r = dfs.call(e)
if r == false
ret = false
break
end
end
det[id] = false
next ans[id] = ret
end
res = 0
(1..N).each do |id|
res += dfs.call(id) ? 1 : 0
end
p res