CSES - KILO 2016 3/5 - Results
Submission details
Task:Secret society
Sender:Feeniksi
Submission time:2016-09-20 18:07:46 +0300
Language:Java
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.10 sdetails
#2ACCEPTED0.11 sdetails
#3ACCEPTED0.10 sdetails
#4ACCEPTED0.11 sdetails
#5ACCEPTED0.10 sdetails
#6ACCEPTED0.10 sdetails
#7ACCEPTED0.10 sdetails
#8ACCEPTED0.10 sdetails
#9ACCEPTED0.10 sdetails
#10ACCEPTED0.10 sdetails
#11ACCEPTED0.10 sdetails
#12ACCEPTED0.09 sdetails
#13ACCEPTED0.10 sdetails
#14ACCEPTED0.10 sdetails
#15ACCEPTED0.09 sdetails
#16ACCEPTED0.10 sdetails
#17ACCEPTED0.10 sdetails
#18ACCEPTED0.11 sdetails
#19ACCEPTED0.10 sdetails
#200.09 sdetails
#21ACCEPTED0.09 sdetails
#22ACCEPTED0.10 sdetails
#23ACCEPTED0.10 sdetails
#24ACCEPTED0.10 sdetails
#25ACCEPTED0.09 sdetails
#26ACCEPTED0.09 sdetails
#27ACCEPTED0.09 sdetails
#28ACCEPTED0.09 sdetails
#29ACCEPTED0.10 sdetails
#30ACCEPTED0.10 sdetails
#310.20 sdetails
#320.21 sdetails
#330.20 sdetails
#340.20 sdetails
#350.21 sdetails
#360.20 sdetails
#370.19 sdetails
#380.20 sdetails
#390.20 sdetails
#400.21 sdetails
#410.19 sdetails
#420.20 sdetails
#430.22 sdetails
#440.20 sdetails
#450.20 sdetails
#460.21 sdetails
#470.20 sdetails
#480.20 sdetails
#490.20 sdetails
#500.21 sdetails
#510.21 sdetails
#520.20 sdetails
#530.19 sdetails
#540.20 sdetails
#550.20 sdetails
#560.21 sdetails
#570.20 sdetails
#580.20 sdetails
#590.21 sdetails
#600.21 sdetails

Code

import java.util.ArrayList;
import java.util.Collections;

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author viljampa
 */
public class Kilpa31 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        IO io = new IO();
        ArrayList<Integer> lista = new ArrayList();
        long summa = 0;
        long summa2 = 0;
        
        int koko = io.nextInt();
        for (int i = 0; i < koko; i++) {
            lista.add(io.nextInt());
        }
        
//        int koko = 6;
//        for (int i = 0; i < 100000; i++) {
//            lista.add(100000);
//        }
//        lista.add(1);
//        lista.add(2);
//        lista.add(3);
////        lista.add(6);
//        lista.add(1);
//        lista.add(9);
//        lista.add(9);
//        lista.add(4);
//        lista.add(1);
//        lista.add(7);
////        lista.add(5);
//        lista.add(2);
//        lista.add(6);
//        lista.add(3);
//        lista.add(3);
//        lista.add(7);
////        lista.add(2);
////        lista.add(3);
//        lista.add(2);
//        lista.add(10);
//        lista.add(7);
//        lista.add(1);
        
        int kohta = 0;
        for (int i = 0; i < koko - 2;) {
            if (lista.get(i) + lista.get(i + 2) < lista.get(i + 1)) {
                summa += lista.get(i + 1);
                i += 3;
            } else {
                summa += lista.get(i);
                i += 2;
            }
            kohta = i;
        }
        if (kohta == koko - 1) summa += lista.get(koko - 1);
        else if (kohta == koko - 2) {
            if (lista.get(koko - 1) > lista.get(koko - 2)) summa += lista.get(koko - 1);
            else summa += lista.get(koko - 2);
        }
        
        Collections.reverse(lista);
        
        int kohta2 = 0;
        for (int i = 0; i < koko - 2;) {
            if (lista.get(i) + lista.get(i + 2) < lista.get(i + 1)) {
                summa2 += lista.get(i + 1);
                i += 3;
            } else {
                summa2 += lista.get(i);
                i += 2;
            }
            kohta2 = i;
        }
        if (kohta2 == koko - 1) summa2 += lista.get(koko - 1);
        else if (kohta2 == koko - 2) {
            if (lista.get(koko - 1) > lista.get(koko - 2)) summa2 += lista.get(koko - 1);
            else summa2 += lista.get(koko - 2);
        }
        
        if (koko == 2) {
            if (lista.get(0) > lista.get(1)) {
                summa = lista.get(0);
                summa2 = lista.get(0);
            }
            else {
                summa = lista.get(1);
                summa2 = lista.get(1);
            }
        }
        long isompi = 0;
        if (summa > summa2) {
            isompi = summa;
        } else {
            isompi = summa2;
        }
        io.print(isompi);
        io.close();

//	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.
    }
    
}

Test details

Test 1

Verdict: ACCEPTED

input
8
82167 74344 17690 29762 97557 ...

correct output
234549

user output
234549

Test 2

Verdict: ACCEPTED

input
14
70761 58268 26663 64199 77413 ...

correct output
492421

user output
492421

Test 3

Verdict: ACCEPTED

input
13
10062 1803 23381 95462 4204 39...

correct output
313361

user output
313361

Test 4

Verdict: ACCEPTED

input
7
32316 35360 7609 51169 86615 7...

correct output
183208

user output
183208

Test 5

Verdict: ACCEPTED

input
4
18494 7985 28152 23870

correct output
46646

user output
46646

Test 6

Verdict: ACCEPTED

input
8
17154 23977 39033 5069 98474 5...

correct output
204101

user output
204101

Test 7

Verdict: ACCEPTED

input
13
22174 83546 16864 53783 87523 ...

correct output
395544

user output
395544

Test 8

Verdict: ACCEPTED

input
3
67386 40334 54655

correct output
122041

user output
122041

Test 9

Verdict: ACCEPTED

input
8
66746 83314 30727 21243 59717 ...

correct output
241506

user output
241506

Test 10

Verdict: ACCEPTED

input
11
54823 19591 12877 7876 94518 5...

correct output
324916

user output
324916

Test 11

Verdict: ACCEPTED

input
6
17330 83694 39746 39424 22712 ...

correct output
179880

user output
179880

Test 12

Verdict: ACCEPTED

input
1
961

correct output
961

user output
961

Test 13

Verdict: ACCEPTED

input
1
95374

correct output
95374

user output
95374

Test 14

Verdict: ACCEPTED

input
6
16157 53627 97481 32761 66390 ...

correct output
196944

user output
196944

Test 15

Verdict: ACCEPTED

input
12
72868 41182 92281 22999 3226 8...

correct output
381402

user output
381402

Test 16

Verdict: ACCEPTED

input
2
5229 41838

correct output
41838

user output
41838

Test 17

Verdict: ACCEPTED

input
14
44653 33852 55769 27095 52669 ...

correct output
381628

user output
381628

Test 18

Verdict: ACCEPTED

input
1
81961

correct output
81961

user output
81961

Test 19

Verdict: ACCEPTED

input
12
33617 81568 83269 1640 20284 2...

correct output
272144

user output
272144

Test 20

Verdict:

input
7
4716 35575 51199 73844 90824 9...

correct output
200633

user output
147948

Test 21

Verdict: ACCEPTED

input
7
61024 70777 78832 24564 65781 ...

correct output
264684

user output
264684

Test 22

Verdict: ACCEPTED

input
11
26635 44678 41689 30519 23117 ...

correct output
267955

user output
267955

Test 23

Verdict: ACCEPTED

input
5
63953 70599 42595 83930 62546

correct output
169094

user output
169094

Test 24

Verdict: ACCEPTED

input
9
91332 9603 53306 86281 36652 7...

correct output
321952

user output
321952

Test 25

Verdict: ACCEPTED

input
2
73914 73947

correct output
73947

user output
73947

Test 26

Verdict: ACCEPTED

input
3
87899 64575 32906

correct output
120805

user output
120805

Test 27

Verdict: ACCEPTED

input
5
27731 8898 51973 54895 92867

correct output
172571

user output
172571

Test 28

Verdict: ACCEPTED

input
12
38809 751 77824 43750 31384 58...

correct output
368321

user output
368321

Test 29

Verdict: ACCEPTED

input
6
10112 40573 23661 51255 99211 ...

correct output
169484

user output
169484

Test 30

Verdict: ACCEPTED

input
7
20651 54635 21527 44056 17827 ...

correct output
165168

user output
165168

Test 31

Verdict:

input
100000
93733 41853 91549 42522 98526 ...

correct output
2933909043

user output
2835881326

Test 32

Verdict:

input
100000
54981 10709 88197 64436 57325 ...

correct output
2937908337

user output
2838233374

Test 33

Verdict:

input
100000
14425 81375 80461 33453 34071 ...

correct output
2928557045

user output
2832687368

Test 34

Verdict:

input
100000
51506 89528 54392 44317 75415 ...

correct output
2934718908

user output
2833334627

Test 35

Verdict:

input
100000
63304 72595 49861 90267 39118 ...

correct output
2930068388

user output
2830745975

Test 36

Verdict:

input
100000
16964 6948 10332 50222 83290 4...

correct output
2934067432

user output
2837725644

Test 37

Verdict:

input
100000
97360 97794 12512 19846 220 26...

correct output
2924996878

user output
2829222289

Test 38

Verdict:

input
100000
79795 2973 16596 73454 96290 4...

correct output
2931172812

user output
2831227872

Test 39

Verdict:

input
100000
94797 66004 6678 35212 58470 4...

correct output
2923578963

user output
2826128726

Test 40

Verdict:

input
100000
27111 41517 23010 79010 5601 2...

correct output
2932499448

user output
2833224985

Test 41

Verdict:

input
100000
53771 93785 48463 36136 9681 7...

correct output
2936473045

user output
2838139781

Test 42

Verdict:

input
100000
82653 7309 5921 77673 97953 89...

correct output
2929723274

user output
2833471909

Test 43

Verdict:

input
100000
14011 16108 18711 90964 47093 ...

correct output
2937907780

user output
2839360888

Test 44

Verdict:

input
100000
31145 47039 35403 64779 94466 ...

correct output
2942920354

user output
2843093869

Test 45

Verdict:

input
100000
1482 40299 49756 65990 34457 9...

correct output
2931033555

user output
2828978681

Test 46

Verdict:

input
100000
18560 24627 75814 36561 39348 ...

correct output
2930475326

user output
2834341377

Test 47

Verdict:

input
100000
44318 521 63986 36827 39298 20...

correct output
2934931238

user output
2835895254

Test 48

Verdict:

input
100000
16535 4556 49396 83740 66091 7...

correct output
2931005003

user output
2831237681

Test 49

Verdict:

input
100000
70937 14060 36315 29994 25814 ...

correct output
2936916442

user output
2836764743

Test 50

Verdict:

input
100000
43986 63708 21262 25786 4511 8...

correct output
2931313096

user output
2832653199

Test 51

Verdict:

input
100000
48197 28419 68987 20620 20088 ...

correct output
2938374714

user output
2840052109

Test 52

Verdict:

input
100000
126 88727 95405 3677 34230 923...

correct output
2931110176

user output
2834647198

Test 53

Verdict:

input
100000
46623 78811 8618 15126 65108 3...

correct output
2934140777

user output
2833849267

Test 54

Verdict:

input
100000
87791 60897 97263 93072 77812 ...

correct output
2935378353

user output
2836448451

Test 55

Verdict:

input
100000
5514 76554 54949 19658 21052 7...

correct output
2933162950

user output
2836161254

Test 56

Verdict:

input
100000
42268 49751 1198 72655 89979 7...

correct output
2939046886

user output
2838907793

Test 57

Verdict:

input
100000
89234 96225 35648 15415 45607 ...

correct output
2931335337

user output
2834358831

Test 58

Verdict:

input
100000
25131 24210 56353 13962 32559 ...

correct output
2936342387

user output
2838499357

Test 59

Verdict:

input
100000
50910 81448 57188 76354 84814 ...

correct output
2934492599

user output
2833055868

Test 60

Verdict:

input
100000
59643 77756 39858 76270 32740 ...

correct output
2934145173

user output
2834041062