Task: | Criminals |
Sender: | thierry |
Submission time: | 2018-10-04 17:18:56 +0300 |
Language: | Java |
Status: | READY |
Result: | ACCEPTED |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.15 s | details |
#2 | ACCEPTED | 0.14 s | details |
#3 | ACCEPTED | 0.14 s | details |
#4 | ACCEPTED | 0.14 s | details |
#5 | ACCEPTED | 0.15 s | details |
#6 | ACCEPTED | 0.15 s | details |
#7 | ACCEPTED | 0.15 s | details |
#8 | ACCEPTED | 0.15 s | details |
#9 | ACCEPTED | 0.19 s | details |
#10 | ACCEPTED | 0.18 s | details |
#11 | ACCEPTED | 0.15 s | details |
#12 | ACCEPTED | 0.19 s | details |
#13 | ACCEPTED | 0.20 s | details |
#14 | ACCEPTED | 0.19 s | details |
#15 | ACCEPTED | 0.18 s | details |
#16 | ACCEPTED | 0.20 s | details |
#17 | ACCEPTED | 0.20 s | details |
#18 | ACCEPTED | 0.19 s | details |
#19 | ACCEPTED | 0.19 s | details |
Code
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Set; import java.util.StringTokenizer; import java.util.TreeSet; import java.util.Arrays; public class Viikko5_c { static class FastReader { BufferedReader br; StringTokenizer st; public FastReader() { br = new BufferedReader(new InputStreamReader(System.in)); } String next() { while (st == null || !st.hasMoreElements()) { try { st = new StringTokenizer(br.readLine()); } catch (IOException e) { } } return st.nextToken(); } int nextInt() { return Integer.parseInt(next()); } String nextLine() { String str = ""; try { str = br.readLine(); } catch (IOException e) { } return str; } } public static void main(String[] args) { FastReader s = new FastReader(); int n = s.nextInt(); Set<Integer> gangs = new TreeSet<>(); Set<String> criminals = new TreeSet<>(); boolean t = true; for (int i = 0; i < n; i++) { String a = s.next(); int b = Integer.parseInt(a.substring(0, 3)); int c = Integer.parseInt(a.substring(4)); gangs.add(b); char[] luvut1 = String.valueOf(b).toCharArray(); char[] luvut2 = String.valueOf(c).toCharArray(); Arrays.sort(luvut1); Arrays.sort(luvut2); for (int j = 0; j < 3; j++) { if (luvut2[j] != luvut1[j]) { t = false; } } if (criminals.contains(a)) { t = false; } criminals.add(a); } if (t) { System.out.println(gangs.size()); } else { System.out.println("QAQ"); } } }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
5 176-671 176-617 176-716 176-167 ... |
correct output |
---|
1 |
user output |
---|
1 |
Test 2
Verdict: ACCEPTED
input |
---|
3 123-321 123-312 312-123 |
correct output |
---|
2 |
user output |
---|
2 |
Test 3
Verdict: ACCEPTED
input |
---|
2 123-123 123-123 |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 4
Verdict: ACCEPTED
input |
---|
2 123-123 123-456 |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 5
Verdict: ACCEPTED
input |
---|
1 514-415 |
correct output |
---|
1 |
user output |
---|
1 |
Test 6
Verdict: ACCEPTED
input |
---|
8 384-843 384-348 384-834 895-958 ... |
correct output |
---|
3 |
user output |
---|
3 |
Test 7
Verdict: ACCEPTED
input |
---|
9 548-845 556-565 626-266 548-458 ... |
correct output |
---|
3 |
user output |
---|
3 |
Test 8
Verdict: ACCEPTED
input |
---|
1 966-696 |
correct output |
---|
1 |
user output |
---|
1 |
Test 9
Verdict: ACCEPTED
input |
---|
860 883-838 589-895 172-712 591-951 ... |
correct output |
---|
254 |
user output |
---|
254 |
Test 10
Verdict: ACCEPTED
input |
---|
766 869-968 486-468 295-925 166-616 ... |
correct output |
---|
265 |
user output |
---|
265 |
Test 11
Verdict: ACCEPTED
input |
---|
128 219-912 444-444 372-327 771-771 ... |
correct output |
---|
82 |
user output |
---|
82 |
Test 12
Verdict: ACCEPTED
input |
---|
392 625-625 129-291 451-451 277-772 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 13
Verdict: ACCEPTED
input |
---|
868 689-869 737-773 896-689 522-225 ... |
correct output |
---|
222 |
user output |
---|
222 |
Test 14
Verdict: ACCEPTED
input |
---|
533 548-485 143-143 714-471 299-299 ... |
correct output |
---|
295 |
user output |
---|
295 |
Test 15
Verdict: ACCEPTED
input |
---|
1000 128-182 755-755 196-169 674-476 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 16
Verdict: ACCEPTED
input |
---|
1000 365-635 476-746 199-919 648-468 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 17
Verdict: ACCEPTED
input |
---|
1000 474-744 428-284 532-235 288-288 ... |
correct output |
---|
425 |
user output |
---|
425 |
Test 18
Verdict: ACCEPTED
input |
---|
1000 346-436 573-735 981-918 582-582 ... |
correct output |
---|
QAQ |
user output |
---|
QAQ |
Test 19
Verdict: ACCEPTED
input |
---|
1000 128-128 585-558 487-874 261-162 ... |
correct output |
---|
208 |
user output |
---|
208 |