Task: | Highways |
Sender: | michaeljackson123 |
Submission time: | 2016-09-27 18:16:05 +0300 |
Language: | Java |
Status: | READY |
Result: | ACCEPTED |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.10 s | details |
#2 | ACCEPTED | 0.10 s | details |
#3 | ACCEPTED | 0.11 s | details |
#4 | ACCEPTED | 0.12 s | details |
#5 | ACCEPTED | 0.10 s | details |
#6 | ACCEPTED | 0.09 s | details |
#7 | ACCEPTED | 0.12 s | details |
#8 | ACCEPTED | 0.12 s | details |
#9 | ACCEPTED | 0.10 s | details |
#10 | ACCEPTED | 0.11 s | details |
#11 | ACCEPTED | 0.13 s | details |
#12 | ACCEPTED | 0.14 s | details |
#13 | ACCEPTED | 0.14 s | details |
#14 | ACCEPTED | 0.15 s | details |
#15 | ACCEPTED | 0.12 s | details |
#16 | ACCEPTED | 0.10 s | details |
#17 | ACCEPTED | 0.12 s | details |
#18 | ACCEPTED | 0.11 s | details |
#19 | ACCEPTED | 0.11 s | details |
#20 | ACCEPTED | 0.12 s | details |
#21 | ACCEPTED | 0.19 s | details |
#22 | ACCEPTED | 0.29 s | details |
#23 | ACCEPTED | 0.21 s | details |
#24 | ACCEPTED | 0.27 s | details |
#25 | ACCEPTED | 0.28 s | details |
#26 | ACCEPTED | 0.21 s | details |
#27 | ACCEPTED | 0.16 s | details |
#28 | ACCEPTED | 0.20 s | details |
#29 | ACCEPTED | 0.22 s | details |
#30 | ACCEPTED | 0.23 s | details |
#31 | ACCEPTED | 0.25 s | details |
#32 | ACCEPTED | 0.20 s | details |
#33 | ACCEPTED | 0.28 s | details |
#34 | ACCEPTED | 0.29 s | details |
#35 | ACCEPTED | 0.24 s | details |
#36 | ACCEPTED | 0.22 s | details |
#37 | ACCEPTED | 0.22 s | details |
#38 | ACCEPTED | 0.29 s | details |
#39 | ACCEPTED | 0.21 s | details |
#40 | ACCEPTED | 0.30 s | details |
#41 | ACCEPTED | 0.27 s | details |
#42 | ACCEPTED | 0.30 s | details |
#43 | ACCEPTED | 0.26 s | details |
#44 | ACCEPTED | 0.30 s | details |
#45 | ACCEPTED | 0.27 s | details |
#46 | ACCEPTED | 0.32 s | details |
#47 | ACCEPTED | 0.34 s | details |
#48 | ACCEPTED | 0.33 s | details |
#49 | ACCEPTED | 0.30 s | details |
#50 | ACCEPTED | 0.30 s | details |
Code
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ //package javaapplication14; import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; /** * * @author tuukkatu */ public class JavaApplication14 { public static ArrayList<ArrayList> graph; public static int[] visited; public static int count; public static int[] id; public static void main(String[] args) { // TODO code application logic here IO io = new IO(); //String a = io.next(); // Lukee seuraavan välein erotellun merkkijonon. //int b = io.nextInt(); // Lukee seuraavan välein erotellun int-kokonaisluvun. //long c = io.nextLong(); // Lukee seuraavan välein erotellun long-kokonaisluvun. //double d = io.nextDouble(); // Lukee seuraavan välein erotellun double-liukuluvun. // Toimii kuten System.out.println. int n = io.nextInt(); int m = io.nextInt(); graph = new ArrayList(); for (int i = 0; i <= n; i++) { graph.add(new ArrayList<Integer>()); } for (int i = 0; i < m; i++) { int u = io.nextInt(); int v = io.nextInt(); graph.get(u).add(v); graph.get(v).add(u); } visited = new int[n + 1]; id = new int[n + 1]; // id of component count = 1; for (int j = 1; j < graph.size(); j++) { if (visited[j] == 1) { continue; } dfs(j); count++; } //System.out.println(Arrays.toString(id)); int[] componentSizes = new int[n]; for (int i = 1; i < id.length; i++) { int component = id[i]; componentSizes[component]++; } //System.out.println(Arrays.toString(componentSizes)); boolean success = true; for (int i = 1; i < componentSizes.length; i++) { if (componentSizes[i] % 2 != 0) { success = false; } } if (success) { io.println("YAY"); } else { io.println("QAQ"); } io.close(); // TÄYTYY KUTSUA LOPUKSI, muuten tuloste voi jäädä kirjoittamatta } private static void dfs(int s) { if (visited[s] == 1) { return; } visited[s] = 1; id[s] = count; for (int i = 0; i < graph.get(s).size(); i++) { int node = (int) graph.get(s).get(i); dfs(node); } } }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
18 22 14 8 15 7 9 14 5 3 ... |
correct output |
---|
YAY |
user output |
---|
YAY |
Test 2
Verdict: ACCEPTED
input |
---|
13 29 1 12 2 9 4 3 6 3 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 3
Verdict: ACCEPTED
input |
---|
11 28 5 4 2 3 1 4 8 11 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 4
Verdict: ACCEPTED
input |
---|
19 22 1 7 2 6 3 9 4 1 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 5
Verdict: ACCEPTED
input |
---|
18 29 6 1 13 14 16 17 11 4 ... |
correct output |
---|
YAY |
user output |
---|
YAY |
Test 6
Verdict: ACCEPTED
input |
---|
11 25 1 5 2 8 3 1 4 11 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 7
Verdict: ACCEPTED
input |
---|
15 23 7 4 2 12 3 4 1 3 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 8
Verdict: ACCEPTED
input |
---|
20 20 1 19 2 20 3 4 4 14 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 9
Verdict: ACCEPTED
input |
---|
11 21 9 4 5 1 2 9 1 4 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 10
Verdict: ACCEPTED
input |
---|
17 20 1 17 3 9 4 2 5 7 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 11
Verdict: ACCEPTED
input |
---|
103 4134 58 82 47 91 76 84 96 52 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 12
Verdict: ACCEPTED
input |
---|
135 3338 1 9 2 79 3 59 4 49 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 13
Verdict: ACCEPTED
input |
---|
176 4742 55 158 98 75 33 59 40 127 ... |
correct output |
---|
YAY |
user output |
---|
YAY |
Test 14
Verdict: ACCEPTED
input |
---|
125 3020 1 43 2 44 3 96 4 18 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 15
Verdict: ACCEPTED
input |
---|
163 4539 40 15 1 136 159 27 41 42 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 16
Verdict: ACCEPTED
input |
---|
1239 188 1 250 2 990 3 241 4 90 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 17
Verdict: ACCEPTED
input |
---|
1805 194 99 1473 669 482 1695 156 858 1646 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 18
Verdict: ACCEPTED
input |
---|
1043 187 1 288 2 737 3 853 4 72 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 19
Verdict: ACCEPTED
input |
---|
1844 191 602 1650 1622 1101 1389 331 1793 1057 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 20
Verdict: ACCEPTED
input |
---|
1320 193 1 348 2 205 3 1074 4 565 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 21
Verdict: ACCEPTED
input |
---|
37937 25088 6333 24947 28242 23895 19867 8587 31583 32446 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 22
Verdict: ACCEPTED
input |
---|
66558 76158 1 59409 2 18517 3 56524 4 11524 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 23
Verdict: ACCEPTED
input |
---|
51952 39128 8910 28624 7521 5624 36437 50565 26552 11722 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 24
Verdict: ACCEPTED
input |
---|
83912 87589 1 83766 2 74513 3 74820 4 57891 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 25
Verdict: ACCEPTED
input |
---|
94126 62566 8925 81992 35359 64973 79825 68011 77418 32726 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 26
Verdict: ACCEPTED
input |
---|
16552 30101 1 8349 2 13806 3 9007 4 2387 ... |
correct output |
---|
YAY |
user output |
---|
YAY |
Test 27
Verdict: ACCEPTED
input |
---|
17594 10589 3512 1331 1098 3073 15746 3865 7413 4396 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 28
Verdict: ACCEPTED
input |
---|
83805 16105 1 71350 2 33991 3 35848 4 34777 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 29
Verdict: ACCEPTED
input |
---|
18121 59415 4216 9370 15068 8754 15081 16115 12704 4487 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 30
Verdict: ACCEPTED
input |
---|
83072 54739 1 17640 2 20578 3 7481 4 67768 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 31
Verdict: ACCEPTED
input |
---|
77926 38175 26905 68006 67362 27509 31320 42067 77657 1378 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 32
Verdict: ACCEPTED
input |
---|
44917 15940 1 41068 2 39644 3 42386 4 7163 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 33
Verdict: ACCEPTED
input |
---|
72700 76527 64456 41883 6850 9796 17524 68963 68586 46776 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 34
Verdict: ACCEPTED
input |
---|
85704 93013 1 59359 2 66400 3 36961 4 67663 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 35
Verdict: ACCEPTED
input |
---|
36756 76953 23747 33048 18369 15323 17010 34156 16318 32438 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 36
Verdict: ACCEPTED
input |
---|
22319 66730 1 12649 2 14406 3 10407 4 1269 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 37
Verdict: ACCEPTED
input |
---|
48048 41788 31994 26627 46295 7660 19069 38273 18860 1487 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 38
Verdict: ACCEPTED
input |
---|
65801 83175 1 26103 2 36748 3 23794 4 102 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 39
Verdict: ACCEPTED
input |
---|
46105 56673 4831 22570 22025 33489 36070 4619 11615 15142 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 40
Verdict: ACCEPTED
input |
---|
93010 96511 1 23739 2 76954 3 83694 4 78590 ... |
correct output |
---|
YAY |
user output |
---|
YAY |
Test 41
Verdict: ACCEPTED
input |
---|
50000 100000 15980 46835 23457 49055 30488 40144 10976 47152 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 42
Verdict: ACCEPTED
input |
---|
50000 100000 1 21375 2 45936 3 37365 4 24446 ... |
correct output |
---|
YAY |
user output |
---|
YAY |
Test 43
Verdict: ACCEPTED
input |
---|
50000 100000 42443 25098 16932 10533 11575 30560 2686 48416 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 44
Verdict: ACCEPTED
input |
---|
50000 100000 1 2375 2 42853 3 14280 4 47033 ... |
correct output |
---|
YAY |
user output |
---|
YAY |
Test 45
Verdict: ACCEPTED
input |
---|
50000 100000 16190 47190 26331 23477 20723 38527 18025 47404 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 46
Verdict: ACCEPTED
input |
---|
100000 100000 1 88825 2 21559 3 54663 4 73730 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 47
Verdict: ACCEPTED
input |
---|
100000 100000 59924 64307 38286 97441 98466 13035 24330 59056 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 48
Verdict: ACCEPTED
input |
---|
100000 100000 1 82358 2 69176 3 36107 4 56588 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 49
Verdict: ACCEPTED
input |
---|
100000 100000 1230 49794 94564 58598 41841 23612 47298 9154 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 50
Verdict: ACCEPTED
input |
---|
100000 100000 1 42055 2 41897 3 65723 4 9205 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |