CSES - Datatähti 2015 loppu - Results
Submission details
Task:Lukujono
Sender:Kuha
Submission time:2015-01-29 16:18:27 +0200
Language:Java
Status:READY
Result:50
Feedback
groupverdictscore
#1ACCEPTED16
#2ACCEPTED34
#30
Test results
testverdicttimegroup
#1ACCEPTED0.20 s1details
#2ACCEPTED0.26 s1details
#3ACCEPTED0.26 s1details
#4ACCEPTED0.26 s1details
#5ACCEPTED0.23 s1details
#6ACCEPTED0.24 s1details
#7ACCEPTED0.20 s1details
#8ACCEPTED0.26 s1details
#9ACCEPTED0.59 s2details
#10ACCEPTED0.61 s2details
#11ACCEPTED0.55 s2details
#12ACCEPTED0.58 s2details
#13ACCEPTED0.45 s2details
#14ACCEPTED0.60 s2details
#15ACCEPTED0.56 s2details
#16ACCEPTED0.61 s2details
#17--3details
#18--3details
#19--3details
#20--3details
#21--3details
#22--3details
#23--3details
#24--3details

Code

import java.io.BufferedOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        
        int n = s.nextInt();
        Test test = new Test();
        test.add(0, (long)0);
        test.add(1, (long)1);
        calc(n, test);
        System.out.println(test.get(n));
    }
    
    public static void calc (int n, Test test) {
        long l = 0;
        for (int x = 2; x <= n; x++) {
            if (test.get(n / x) == -1) {
                calc(n / x, test);
            }
            
            l += test.get(n / x);
        }
        test.add(n, l);
    }
}

class Test {
    ArrayList<Long> v = new ArrayList<>();
    ArrayList<Integer> a = new ArrayList<>();
    
    public void add (int n, Long s) {
        a.add(n);
        v.add(s);
    }
    
    public long get (int n) {
        int i = a.indexOf(n);
        if (i == -1) return -1;
        return v.get(i);
    }
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
542

correct output
11942

user output
11942

Test 2

Group: 1

Verdict: ACCEPTED

input
929

correct output
29913

user output
29913

Test 3

Group: 1

Verdict: ACCEPTED

input
801

correct output
23460

user output
23460

Test 4

Group: 1

Verdict: ACCEPTED

input
935

correct output
30006

user output
30006

Test 5

Group: 1

Verdict: ACCEPTED

input
998

correct output
33766

user output
33766

Test 6

Group: 1

Verdict: ACCEPTED

input
942

correct output
30490

user output
30490

Test 7

Group: 1

Verdict: ACCEPTED

input
736

correct output
20285

user output
20285

Test 8

Group: 1

Verdict: ACCEPTED

input
930

correct output
29975

user output
29975

Test 9

Group: 2

Verdict: ACCEPTED

input
95404

correct output
90172356

user output
90172356

Test 10

Group: 2

Verdict: ACCEPTED

input
98060

correct output
94687572

user output
94687572

Test 11

Group: 2

Verdict: ACCEPTED

input
69495

correct output
52308390

user output
52308390

Test 12

Group: 2

Verdict: ACCEPTED

input
92197

correct output
85306979

user output
85306979

Test 13

Group: 2

Verdict: ACCEPTED

input
53418

correct output
32957881

user output
32957881

Test 14

Group: 2

Verdict: ACCEPTED

input
97377

correct output
93859995

user output
93859995

Test 15

Group: 2

Verdict: ACCEPTED

input
68065

correct output
50223001

user output
50223001

Test 16

Group: 2

Verdict: ACCEPTED

input
95463

correct output
90201672

user output
90201672

Test 17

Group: 3

Verdict:

input
74323456

correct output
8975396101231

user output
(empty)

Test 18

Group: 3

Verdict:

input
92132055

correct output
13006378374515

user output
(empty)

Test 19

Group: 3

Verdict:

input
55135704

correct output
5354656932672

user output
(empty)

Test 20

Group: 3

Verdict:

input
98613338

correct output
14631125716007

user output
(empty)

Test 21

Group: 3

Verdict:

input
75558302

correct output
9238208186405

user output
(empty)

Test 22

Group: 3

Verdict:

input
94968034

correct output
13713914468591

user output
(empty)

Test 23

Group: 3

Verdict:

input
52163652

correct output
4858985762438

user output
(empty)

Test 24

Group: 3

Verdict:

input
94830583

correct output
13674294022172

user output
(empty)