Submission #4029235
Source Code Expand
import java.util.*; import static java.lang.System.*; import static java.lang.Math.*; public class Main { public static void main(String[] $) { Scanner sc = new Scanner(in); int N=sc.nextInt(); int a=sc.nextInt(),b=sc.nextInt(); int M=sc.nextInt(); int mod=1000000007; long[] min=new long[N+1]; for (int i = 0; i <= N; i++) min[i] = mod; min[a]=0; long[] count=new long[N+1]; count[a]=1; int[] node=new int[N+1]; LinkedList<Integer>[] edge=new LinkedList[N+1]; for(int i=0;i<N+1;i++)edge[i]=new LinkedList<>(); for (int i = 0; i <M; i++) { int x=sc.nextInt(),y=sc.nextInt(); edge[x].add(y); edge[y].add(x); } Queue<Integer> q=new ArrayDeque<>(); q.add(a); Queue<Long> dist=new ArrayDeque<>(); dist.add(0l); while (q.size()>0){ int vertex=q.poll(); long d=dist.poll(); min[vertex]=min(min[vertex],d); for (Integer child:edge[vertex]){ edge[child].remove((Integer)vertex); q.add(child); dist.add(d+1); } } q.add(a); dist.add(0l); while (q.size()>0){ int vertex=q.poll(); long d=dist.poll(); if(node[vertex]==0) { for (Integer child : edge[vertex]) { if(min[child]==d+1)count[child] = (count[child] + count[vertex]) % mod; if (!q.contains(child)) { q.add(child); dist.add(d + 1); } } node[vertex]=1; } } out.println(count[b]); } }
Submission Info
Submission Time | |
---|---|
Task | C - 正直者の高橋くん |
User | NS601023 |
Language | Java8 (OpenJDK 1.8.0) |
Score | 0 |
Code Size | 1848 Byte |
Status | TLE |
Exec Time | 2110 ms |
Memory | 552968 KB |
Compile Error
Note: ./Main.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details.
Judge Result
Set Name | Sample | All | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 100 | ||||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | subtask0_sample_01.txt, subtask0_sample_02.txt |
All | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask0_sample_01.txt | AC | 98 ms | 18640 KB |
subtask0_sample_02.txt | AC | 96 ms | 22996 KB |
subtask1_01.txt | AC | 111 ms | 21716 KB |
subtask1_02.txt | AC | 107 ms | 21204 KB |
subtask1_03.txt | AC | 96 ms | 18636 KB |
subtask1_04.txt | TLE | 2110 ms | 333580 KB |
subtask1_05.txt | TLE | 2110 ms | 549448 KB |
subtask1_06.txt | AC | 117 ms | 18772 KB |
subtask1_07.txt | AC | 134 ms | 21460 KB |
subtask1_08.txt | AC | 111 ms | 19924 KB |
subtask1_09.txt | AC | 118 ms | 19924 KB |
subtask1_10.txt | AC | 111 ms | 19796 KB |
subtask1_11.txt | AC | 240 ms | 47120 KB |
subtask1_12.txt | TLE | 2106 ms | 274688 KB |
subtask1_13.txt | AC | 229 ms | 39056 KB |
subtask1_14.txt | MLE | 1931 ms | 552968 KB |
subtask1_15.txt | TLE | 2110 ms | 551536 KB |
subtask1_16.txt | AC | 110 ms | 21204 KB |
subtask1_17.txt | AC | 112 ms | 19668 KB |
subtask1_18.txt | AC | 110 ms | 21716 KB |
subtask1_19.txt | AC | 132 ms | 19540 KB |
subtask1_20.txt | AC | 131 ms | 23892 KB |
subtask1_21.txt | AC | 122 ms | 20948 KB |
subtask1_22.txt | AC | 109 ms | 18900 KB |
subtask1_23.txt | AC | 112 ms | 19284 KB |
subtask1_24.txt | AC | 108 ms | 19668 KB |
subtask1_25.txt | AC | 108 ms | 19028 KB |
subtask1_26.txt | AC | 110 ms | 19284 KB |
subtask1_27.txt | AC | 107 ms | 21204 KB |
subtask1_28.txt | AC | 119 ms | 19540 KB |
subtask1_29.txt | AC | 109 ms | 18896 KB |
subtask1_30.txt | AC | 97 ms | 21716 KB |