Task: | Omenat |
Sender: | Etsubu |
Submission time: | 2015-01-29 15:12:56 +0200 |
Language: | Java |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | RUNTIME ERROR | 0 |
#2 | RUNTIME ERROR | 0 |
#3 | RUNTIME ERROR | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | RUNTIME ERROR | 0.07 s | 1 | details |
#2 | RUNTIME ERROR | 0.06 s | 1 | details |
#3 | RUNTIME ERROR | 0.06 s | 1 | details |
#4 | RUNTIME ERROR | 0.06 s | 1 | details |
#5 | RUNTIME ERROR | 0.06 s | 1 | details |
#6 | RUNTIME ERROR | 0.06 s | 1 | details |
#7 | RUNTIME ERROR | 0.07 s | 2 | details |
#8 | RUNTIME ERROR | 0.06 s | 2 | details |
#9 | RUNTIME ERROR | 0.07 s | 2 | details |
#10 | RUNTIME ERROR | 0.06 s | 2 | details |
#11 | RUNTIME ERROR | 0.05 s | 2 | details |
#12 | RUNTIME ERROR | 0.07 s | 2 | details |
#13 | RUNTIME ERROR | 0.09 s | 3 | details |
#14 | RUNTIME ERROR | 0.08 s | 3 | details |
#15 | RUNTIME ERROR | 0.07 s | 3 | details |
#16 | RUNTIME ERROR | 0.08 s | 3 | details |
#17 | RUNTIME ERROR | 0.06 s | 3 | details |
#18 | RUNTIME ERROR | 0.06 s | 3 | details |
Code
package Omenat; import java.util.*; import java.io.*; public class Main { private static int search(ArrayList<Integer> apples,int sum,int depth){ int minValue=Integer.MAX_VALUE; for(int i=0;i<apples.size();i++){ int n=sum-apples.get(i); if(n%3==0){ return depth; }else{ int value=apples.get(i); apples.remove(i); int d=search(apples,n,depth+1); minValue=Math.min(minValue, d); apples.add(i, value); } } return minValue; } public static int main(String[] args) { IO io = new IO(); int appleCount=io.nextInt(); ArrayList<Integer> apples=new ArrayList<Integer>(); int base=0; int sum=0; for(int i=0;i<appleCount;i++){ int apple=io.nextInt(); if(apple%3==0){ base++; } else{ apples.add(apple); sum+=apple; } } int d=search(apples,sum,1); int result=base + (appleCount-base-d); io.print(result); /*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. io.println("Annoit syötteenä " + a + " " + b + " " + c + " " + d); */ io.close(); // TÄYTYY KUTSUA LOPUKSI, muuten tuloste voi jäädä kirjoittamatta return 0; } } 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 |
---|
20 34 98 42 72 75 91 76 30 98 7 1... |
correct output |
---|
20 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 2
Group: 1
Verdict: RUNTIME ERROR
input |
---|
20 20 97 85 24 47 57 69 92 21 72 ... |
correct output |
---|
19 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 3
Group: 1
Verdict: RUNTIME ERROR
input |
---|
20 36 35 3 15 84 14 24 33 39 27 7... |
correct output |
---|
18 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 4
Group: 1
Verdict: RUNTIME ERROR
input |
---|
20 75 87 27 66 14 48 34 1 52 47 7... |
correct output |
---|
20 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 5
Group: 1
Verdict: RUNTIME ERROR
input |
---|
20 83 7 54 38 21 51 61 61 14 32 3... |
correct output |
---|
19 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 6
Group: 1
Verdict: RUNTIME ERROR
input |
---|
20 76 24 28 45 36 87 81 21 48 43 ... |
correct output |
---|
18 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 7
Group: 2
Verdict: RUNTIME ERROR
input |
---|
100 9 48 27 13 12 23 23 35 14 58 2... |
correct output |
---|
100 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 8
Group: 2
Verdict: RUNTIME ERROR
input |
---|
100 22 87 66 23 77 17 41 66 31 40 ... |
correct output |
---|
99 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 9
Group: 2
Verdict: RUNTIME ERROR
input |
---|
100 90 50 48 47 20 93 36 48 69 2 6... |
correct output |
---|
98 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 10
Group: 2
Verdict: RUNTIME ERROR
input |
---|
100 88 39 9 21 51 92 94 75 71 19 8... |
correct output |
---|
100 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 11
Group: 2
Verdict: RUNTIME ERROR
input |
---|
100 76 37 49 50 59 68 6 100 48 18 ... |
correct output |
---|
99 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 12
Group: 2
Verdict: RUNTIME ERROR
input |
---|
100 78 45 100 25 90 85 33 90 45 54... |
correct output |
---|
98 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 13
Group: 3
Verdict: RUNTIME ERROR
input |
---|
100000 460655049 593289072 315159623 ... |
correct output |
---|
100000 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 14
Group: 3
Verdict: RUNTIME ERROR
input |
---|
100000 935436362 204516709 337519402 ... |
correct output |
---|
99999 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 15
Group: 3
Verdict: RUNTIME ERROR
input |
---|
100000 68654915 40061376 215300034 43... |
correct output |
---|
99998 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 16
Group: 3
Verdict: RUNTIME ERROR
input |
---|
100000 435410962 22254303 500625758 6... |
correct output |
---|
100000 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 17
Group: 3
Verdict: RUNTIME ERROR
input |
---|
100000 230562634 84329865 874955526 8... |
correct output |
---|
99999 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main
Test 18
Group: 3
Verdict: RUNTIME ERROR
input |
---|
100000 29734968 168066517 710394372 3... |
correct output |
---|
99998 |
user output |
---|
(empty) |
Error:
Error: Could not find or load main class Main