結果

問題 No.19 ステージの選択
ユーザー letrangerjp
提出日時 2017-06-03 14:17:39
言語 Ruby
(3.4.1)
結果
AC  
実行時間 103 ms / 5,000 ms
コード長 470 bytes
コンパイル時間 102 ms
コンパイル使用メモリ 7,296 KB
実行使用メモリ 12,288 KB
最終ジャッジ日時 2024-12-23 10:06:29
合計ジャッジ時間 3,684 ms
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 24
権限があれば一括ダウンロードができます
コンパイルメッセージ
Main.rb:23: warning: assigned but unused variable - n
Syntax OK

ソースコード

diff #

#!ruby -rtsort

class Array
  include TSort
  alias tsort_each_node each_index
  def tsort_each_child(node)
    yield self[node]
  end
end

N=gets.to_i
L=[]
S=[]
N.times.map{
  a, b = gets.split.take(2).map(&:to_i)
  L << a
  S << b-1
}

used = []
p S.strongly_connected_components.map{|a|
  t = a.min_by{|i|L[i]}
  n = a.map{|i|
    if i != t || used[S[i]]
      L[i]/2.0
    else
      L[i]
    end
  }.sum.tap{
    a.each{|i|
      used[i] = true
    }
  }
}.sum*1.0
0