結果
| 問題 | No.30 たこやき工場 | 
| コンテスト | |
| ユーザー |  ayame_py | 
| 提出日時 | 2015-10-13 04:42:12 | 
| 言語 | Ruby (3.4.1) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 129 ms / 5,000 ms | 
| コード長 | 491 bytes | 
| コンパイル時間 | 112 ms | 
| コンパイル使用メモリ | 7,424 KB | 
| 実行使用メモリ | 14,208 KB | 
| 最終ジャッジ日時 | 2024-12-21 05:23:13 | 
| 合計ジャッジ時間 | 2,691 ms | 
| ジャッジサーバーID (参考情報) | judge2 / judge5 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 17 | 
コンパイルメッセージ
Syntax OK
ソースコード
N=gets.to_i
M=gets.to_i
$dp=Array.new(N){Array.new(N,-1)}
$e=Array.new(N){Array.new(M)}
$c=Array.new(N){Array.new(M)}
$en=Array.new(N,0)
M.times{
	s,q,r=gets.split.map(&:to_i)
	s-=1
	r-=1
	$e[r][$en[r]]=s
	$c[r][$en[r]]=q
	$en[r]+=1
}
def dfs(n)
	return 0 if $dp[n][0]>=0
	N.times{|i| $dp[n][i]=0}
	if($en[n]==0)
	 	$dp[n][n]=1
	 	return 0
	end
	$en[n].times{|i|
		s=$e[n][i]
		dfs(s)
		N.times{|j| $dp[n][j]+=$dp[s][j]*$c[n][i]}
	}
	return 0
end
dfs(N-1)
(N-1).times{|i| puts $dp[N-1][i]}
            
            
            
        