結果
| 問題 | No.30 たこやき工場 |
| コンテスト | |
| ユーザー |
fal_rnd
|
| 提出日時 | 2016-11-27 12:33:51 |
| 言語 | Java (openjdk 25.0.1) |
| 結果 |
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]);
}
}
fal_rnd