結果
問題 |
No.92 逃走経路
|
ユーザー |
![]() |
提出日時 | 2017-01-20 14:55:46 |
言語 | Java (openjdk 23) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,184 bytes |
コンパイル時間 | 4,140 ms |
コンパイル使用メモリ | 85,436 KB |
実行使用メモリ | 879,424 KB |
最終ジャッジ日時 | 2024-12-23 02:51:29 |
合計ジャッジ時間 | 83,482 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 MLE * 1 |
other | AC * 4 WA * 1 TLE * 11 MLE * 2 |
ソースコード
package src; import java.util.*; public class A{ static Scanner s = new Scanner(System.in); public static void main(String[] args) { int n=s.nextInt(),m=s.nextInt(),k=s.nextInt(); int[] pay = new int[k]; Way[] way = new Way[m*2]; ArrayDeque<Integer> deque = new ArrayDeque<>(); { int a,b,c; for(int i=0;i<m;i++) { a=s.nextInt(); b=s.nextInt(); c=s.nextInt(); if(!deque.contains(a)) deque.add(a); if(!deque.contains(b)) deque.add(b); way[i*2 ]=new Way(a,b,c); way[i*2+1]=new Way(b,a,c); } Arrays.sort(way, (o1, o2) -> o1.a-o2.a); for(int i=0;i<k;i++) pay[i]=s.nextInt(); /* System.out.println(deque.toString()); System.out.println(Arrays.toString(pay)); */ } for(final int p:pay) { int size=deque.size(),poll; for(int i=0;i<size;i++) { poll=deque.poll(); for(Way w:way) { if(w.a==poll&&w.c==p) deque.add(w.b); if(w.a>poll) break; } } } System.out.println(deque.size()); System.out.println(deque.toString().replaceAll("[^,0-9]", "").replaceAll(",", " ")); } } class Way{ int a,b,c; Way(int a,int b,int c) { this.a=a; this.b=b; this.c=c; } }