結果
問題 |
No.30 たこやき工場
|
ユーザー |
![]() |
提出日時 | 2016-11-27 12:33:51 |
言語 | Java (openjdk 23) |
結果 |
TLE
|
実行時間 | - |
コード長 | 871 bytes |
コンパイル時間 | 2,051 ms |
コンパイル使用メモリ | 77,816 KB |
実行使用メモリ | 86,728 KB |
最終ジャッジ日時 | 2024-11-27 12:08:58 |
合計ジャッジ時間 | 10,922 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 16 TLE * 1 |
ソースコード
import java.util.*; class B{ static Scanner s = new Scanner(System.in); public static void main(String[] args) { int size = Integer.parseInt(s.next()); int[][] step = new int[size][size]; long[] amount = new long[size]; boolean[] used = new boolean[size]; ArrayDeque<Integer> deque = new ArrayDeque<>(); deque.add(size-1); for(int i=Integer.parseInt(s.next())-1;i>=0;--i) { int from = Integer.parseInt(s.next())-1, x = Integer.parseInt(s.next()), to = Integer.parseInt(s.next())-1; step[to][from]=x; used[to]=true; } while(!deque.isEmpty()) { int i = deque.pollFirst(); amount[size-1]=1; for(int j=0;j<size;j++) { if(step[i][j]>0) { amount[j] += step[i][j]*amount[i]; deque.addFirst(j); } } if(used[i]) amount[i]=0; } for(int i=0;i<size-1;i++) System.out.println(amount[i]); } }