Task: | Spiraali |
Sender: | valk |
Submission time: | 2021-10-13 19:54:04 +0300 |
Language: | Java |
Status: | READY |
Result: | 15 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 15 |
#2 | TIME LIMIT EXCEEDED | 0 |
#3 | TIME LIMIT EXCEEDED | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.21 s | 1 | details |
#2 | TIME LIMIT EXCEEDED | -- | 2 | details |
#3 | TIME LIMIT EXCEEDED | -- | 3 | details |
Code
import java.util.HashMap; import java.util.Map.Entry; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); int size = input.nextInt(); //size int tests = input.nextInt(); //tests HashMap<String, Integer> yValues = new HashMap<>(); int squares = size*size; int num = 0; int y = 0; int x = 1; int yl = 0; int xl = 0; String direction = "down"; for(int i = 0; i < size; i++) { for(int i2 = 0; i2 < size; i2++) yValues.putIfAbsent(i + "," + i2, -1); } for(int i = 0; i < squares; i++) { num++; if(direction == "down") { y++; yValues.put(y+","+x, num); if(y == size-yl) { //end direction = "right"; } }else if(direction == "right") { x++; yValues.put(y+","+x, num); if(x == size-xl) { //end direction = "up"; } }else if(direction == "up") { y--; yValues.put(y+","+x, num); if(y == 1+yl) { //end direction = "left"; xl++; } }else if(direction == "left") { x--; yValues.put(y+","+x, num); if(x == 1+xl) { //end direction = "down"; yl++; } } } //HashMap<Integer, Integer> responses = new HashMap<>(); for(int i = 0; i < tests; i++) { int a = input.nextInt(); int b = input.nextInt(); System.out.println(yValues.get(a + "," + b)); } input.close(); } }
Test details
Test 1
Group: 1
Verdict: ACCEPTED
input |
---|
10 100 1 1 1 2 1 3 1 4 ... |
correct output |
---|
1 36 35 34 33 ... |
user output |
---|
1 36 35 34 33 ... Truncated |
Test 2
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
1000 1000 371 263 915 322 946 880 53 738 ... |
correct output |
---|
773533 312166 206053 200080 593922 ... |
user output |
---|
(empty) |
Test 3
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
1000000000 1000 177757853 827347032 409613589 419171337 739269360 256524697 328695530 896842209 ... |
correct output |
---|
571375684522141210 967321186816598569 762879105851175000 370065046779516790 936897883750373771 ... |
user output |
---|
(empty) |