Task: | Kartta |
Sender: | Kuha |
Submission time: | 2015-01-29 15:32:13 +0200 |
Language: | Java |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | RUNTIME ERROR | 0 |
#2 | RUNTIME ERROR | 0 |
#3 | RUNTIME ERROR | 0 |
#4 | RUNTIME ERROR | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | RUNTIME ERROR | 0.03 s | 1 | details |
#2 | RUNTIME ERROR | 0.06 s | 2 | details |
#3 | RUNTIME ERROR | 0.04 s | 3 | details |
#4 | RUNTIME ERROR | 0.05 s | 4 | details |
Code
import java.io.BufferedOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.util.Arrays; public class Main { public static void main(String[] args) { IO io = new IO(); int n, m, h; n = io.nextInt(); m = io.nextInt(); h = io.nextInt(); char[][][] layers = new char[40][n][m]; int[][] map = new int[n][m]; for (int y = 0; y < n; y++) { for (int x = 0; x < m; x++) { layers[0][y][x] = 'V'; } } for (int y = 0; y < n; y++) { for (int x = 0; x < m; x++) { int i = io.nextInt(); for (int o = 1; o <= h; o++) { layers[o][y][x] = o == i ? 'S' : 'L'; } } } for (int z = 0; z < 40; z++) { for (int y = 0; y < n; y++) { for (int x = 0; x < m; x++) { char c = layers[z][y][x]; io.print(((int)c == 0 ? 'L' : c) + " "); } io.println(); } } for (int z = 0; z <= h; z++) { io.print(z + 1); for (int p = 0; p <= z; p++) { io.print(" " + (p + 1)); } io.println(); } io.close(); } } class IO extends PrintWriter { private InputStreamReader r; private static final int BUFSIZE = 1 << 15; private char[] buf; private int bufc; private int bufi; private StringBuilder sb; public IO() { super(new BufferedOutputStream(System.out)); r = new InputStreamReader(System.in); buf = new char[BUFSIZE]; bufc = 0; bufi = 0; sb = new StringBuilder(); } private void fillBuf() throws IOException { bufi = 0; bufc = 0; while(bufc == 0) { bufc = r.read(buf, 0, BUFSIZE); if(bufc == -1) { bufc = 0; return; } } } private boolean pumpBuf() throws IOException { if(bufi == bufc) { fillBuf(); } return bufc != 0; } private boolean isDelimiter(char c) { return c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f'; } private void eatDelimiters() throws IOException { while(true) { if(bufi == bufc) { fillBuf(); if(bufc == 0) throw new RuntimeException("IO: Out of input."); } if(!isDelimiter(buf[bufi])) break; ++bufi; } } public String next() { try { sb.setLength(0); eatDelimiters(); int start = bufi; while(true) { if(bufi == bufc) { sb.append(buf, start, bufi - start); fillBuf(); start = 0; if(bufc == 0) break; } if(isDelimiter(buf[bufi])) break; ++bufi; } sb.append(buf, start, bufi - start); return sb.toString(); } catch(IOException e) { throw new RuntimeException("IO.next: Caught IOException."); } } public int nextInt() { try { int ret = 0; eatDelimiters(); boolean positive = true; if(buf[bufi] == '-') { ++bufi; if(!pumpBuf()) throw new RuntimeException("IO.nextInt: Invalid int."); positive = false; } boolean first = true; while(true) { if(!pumpBuf()) break; if(isDelimiter(buf[bufi])) { if(first) throw new RuntimeException("IO.nextInt: Invalid int."); break; } first = false; if(buf[bufi] >= '0' && buf[bufi] <= '9') { if(ret < -214748364) throw new RuntimeException("IO.nextInt: Invalid int."); ret *= 10; ret -= (int)(buf[bufi] - '0'); if(ret > 0) throw new RuntimeException("IO.nextInt: Invalid int."); } else { throw new RuntimeException("IO.nextInt: Invalid int."); } ++bufi; } if(positive) { if(ret == -2147483648) throw new RuntimeException("IO.nextInt: Invalid int."); ret = -ret; } return ret; } catch(IOException e) { throw new RuntimeException("IO.nextInt: Caught IOException."); } } public long nextLong() { try { long ret = 0; eatDelimiters(); boolean positive = true; if(buf[bufi] == '-') { ++bufi; if(!pumpBuf()) throw new RuntimeException("IO.nextLong: Invalid long."); positive = false; } boolean first = true; while(true) { if(!pumpBuf()) break; if(isDelimiter(buf[bufi])) { if(first) throw new RuntimeException("IO.nextLong: Invalid long."); break; } first = false; if(buf[bufi] >= '0' && buf[bufi] <= '9') { if(ret < -922337203685477580L) throw new RuntimeException("IO.nextLong: Invalid long."); ret *= 10; ret -= (long)(buf[bufi] - '0'); if(ret > 0) throw new RuntimeException("IO.nextLong: Invalid long."); } else { throw new RuntimeException("IO.nextLong: Invalid long."); } ++bufi; } if(positive) { if(ret == -9223372036854775808L) throw new RuntimeException("IO.nextLong: Invalid long."); ret = -ret; } return ret; } catch(IOException e) { throw new RuntimeException("IO.nextLong: Caught IOException."); } } public double nextDouble() { return Double.parseDouble(next()); } }
Test details
Test 1
Group: 1
Verdict: RUNTIME ERROR
input |
---|
100 100 40 40 11 38 24 5 31 40 10 17 33 1... |
correct output |
---|
(empty) |
user output |
---|
(empty) |
Error:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 40 at Main.main(Main.java:29)
Test 2
Group: 2
Verdict: RUNTIME ERROR
input |
---|
100 100 200 200 71 185 86 113 84 170 60 17... |
correct output |
---|
(empty) |
user output |
---|
(empty) |
Error:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 40 at Main.main(Main.java:29)
Test 3
Group: 3
Verdict: RUNTIME ERROR
input |
---|
100 100 1000 824 172 828 721 509 73 437 530... |
correct output |
---|
(empty) |
user output |
---|
(empty) |
Error:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 40 at Main.main(Main.java:29)
Test 4
Group: 4
Verdict: RUNTIME ERROR
input |
---|
100 100 10000 7110 9439 3392 1630 368 8481 1... |
correct output |
---|
(empty) |
user output |
---|
(empty) |
Error:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 40 at Main.main(Main.java:29)