Task: | Ratsun reitit |
Sender: | anton7r |
Submission time: | 2020-10-10 00:47:58 +0300 |
Language: | Java |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 27 |
#2 | ACCEPTED | 31 |
#3 | ACCEPTED | 42 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.15 s | 1, 2, 3 | details |
#2 | ACCEPTED | 0.16 s | 1, 2, 3 | details |
#3 | ACCEPTED | 0.15 s | 1, 2, 3 | details |
#4 | ACCEPTED | 0.16 s | 1, 2, 3 | details |
#5 | ACCEPTED | 0.16 s | 1, 2, 3 | details |
#6 | ACCEPTED | 0.17 s | 1, 2, 3 | details |
#7 | ACCEPTED | 0.17 s | 1, 2, 3 | details |
#8 | ACCEPTED | 0.23 s | 2, 3 | details |
#9 | ACCEPTED | 0.28 s | 2, 3 | details |
#10 | ACCEPTED | 0.27 s | 2, 3 | details |
#11 | ACCEPTED | 0.35 s | 3 | details |
#12 | ACCEPTED | 0.46 s | 3 | details |
#13 | ACCEPTED | 0.47 s | 3 | details |
Code
import com.sun.tools.jconsole.JConsoleContext;import java.io.*;import java.util.HashMap;import java.util.Map;public class Main {private static int koko = 0;private static int i = 0;private static Map<Coords, Integer> lauta = new HashMap<>();private static Map<Coords, Integer> uudet;static class Coords {public int x;public int y;public Coords(int x, int y) {this.x = x;this.y = y;}public boolean equals(Object o) {Coords c = (Coords)o;return c.x==x && c.y==y;}public void move(int x, int y) {x += this.x;y += this.y;//varmistaa että siirto on mahdollinenif(x > -1 && x < koko && y > -1 && y < koko) {Coords siirto = new Coords(x, y);uudet.put(siirto, i+1);}}public int hashCode() {return Integer.parseInt(x + "0" + y);}}synchronized public static void main(String[] args) {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));try {koko = Integer.parseInt(br.readLine().trim());} catch (IOException ioe) {System.out.println(ioe);}lauta.put(new Coords(0, 0), 0);int kokoToiseen = koko * koko;while (lauta.size() < kokoToiseen) {//boolean loytyyko = false;uudet = new HashMap<>();for (Coords coord : lauta.keySet()) {if (lauta.get(coord) == i) {//loytyyko = true;coord.move(1, 2);coord.move(-1, 2);coord.move(1, -2);coord.move(-1, -2);coord.move(2, 1);coord.move(-2, 1);coord.move(2, -1);coord.move(-2, -1);};}//if(!loytyyko) {// break;//}for (Map.Entry<Coords, Integer> entry : uudet.entrySet()) {lauta.putIfAbsent(entry.getKey(), entry.getValue());}i++;}for (int x = 0; x < koko; x++) {for (int y = 0; y < koko; y++) {if(y != 0) {System.out.print(" ");}System.out.print(lauta.getOrDefault(new Coords(x, y), 0));}System.out.print("\n");}}}
Test details
Test 1
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
4 |
correct output |
---|
0 3 2 5 3 4 1 2 2 1 4 3 5 2 3 2 |
user output |
---|
0 3 2 5 3 4 1 2 2 1 4 3 5 2 3 2 |
Test 2
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
5 |
correct output |
---|
0 3 2 3 2 3 4 1 2 3 2 1 4 3 2 3 2 3 2 3 2 3 2 3 4 |
user output |
---|
0 3 2 3 2 3 4 1 2 3 2 1 4 3 2 3 2 3 2 3 2 3 2 3 4 |
Test 3
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
6 |
correct output |
---|
0 3 2 3 2 3 3 4 1 2 3 4 2 1 4 3 2 3 3 2 3 2 3 4 2 3 2 3 4 3 ... |
user output |
---|
0 3 2 3 2 3 3 4 1 2 3 4 2 1 4 3 2 3 3 2 3 2 3 4 2 3 2 3 4 3 ... |
Test 4
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
7 |
correct output |
---|
0 3 2 3 2 3 4 3 4 1 2 3 4 3 2 1 4 3 2 3 4 3 2 3 2 3 4 3 2 3 2 3 4 3 4 ... |
user output |
---|
0 3 2 3 2 3 4 3 4 1 2 3 4 3 2 1 4 3 2 3 4 3 2 3 2 3 4 3 2 3 2 3 4 3 4 ... Truncated |
Test 5
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
8 |
correct output |
---|
0 3 2 3 2 3 4 5 3 4 1 2 3 4 3 4 2 1 4 3 2 3 4 5 3 2 3 2 3 4 3 4 2 3 2 3 4 3 4 5 ... |
user output |
---|
0 3 2 3 2 3 4 5 3 4 1 2 3 4 3 4 2 1 4 3 2 3 4 5 3 2 3 2 3 4 3 4 2 3 2 3 4 3 4 5 ... Truncated |
Test 6
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
9 |
correct output |
---|
0 3 2 3 2 3 4 5 4 3 4 1 2 3 4 3 4 5 2 1 4 3 2 3 4 5 4 3 2 3 2 3 4 3 4 5 2 3 2 3 4 3 4 5 4 ... |
user output |
---|
0 3 2 3 2 3 4 5 4 3 4 1 2 3 4 3 4 5 2 1 4 3 2 3 4 5 4 3 2 3 2 3 4 3 4 5 2 3 2 3 4 3 4 5 4 ... Truncated |
Test 7
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
10 |
correct output |
---|
0 3 2 3 2 3 4 5 4 5 3 4 1 2 3 4 3 4 5 6 2 1 4 3 2 3 4 5 4 5 3 2 3 2 3 4 3 4 5 6 2 3 2 3 4 3 4 5 4 5 ... |
user output |
---|
0 3 2 3 2 3 4 5 4 5 3 4 1 2 3 4 3 4 5 6 2 1 4 3 2 3 4 5 4 5 3 2 3 2 3 4 3 4 5 6 2 3 2 3 4 ... Truncated |
Test 8
Group: 2, 3
Verdict: ACCEPTED
input |
---|
25 |
correct output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... |
user output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... Truncated |
Test 9
Group: 2, 3
Verdict: ACCEPTED
input |
---|
49 |
correct output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... |
user output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... Truncated |
Test 10
Group: 2, 3
Verdict: ACCEPTED
input |
---|
50 |
correct output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... |
user output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... Truncated |
Test 11
Group: 3
Verdict: ACCEPTED
input |
---|
75 |
correct output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... |
user output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... Truncated |
Test 12
Group: 3
Verdict: ACCEPTED
input |
---|
99 |
correct output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... |
user output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... Truncated |
Test 13
Group: 3
Verdict: ACCEPTED
input |
---|
100 |
correct output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... |
user output |
---|
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ... Truncated |