CSES - Datatähti 2015 loppu - Results
Submission details
Task:Urkupillit
Sender:Perdex
Submission time:2015-01-29 15:31:48
Language:Java
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED12
#2ACCEPTED33
#3ACCEPTED55
Test results
testverdicttimegroup
#1ACCEPTED0.03 s1details
#2ACCEPTED0.04 s1details
#3ACCEPTED0.04 s1details
#4ACCEPTED0.03 s1details
#5ACCEPTED0.04 s1details
#6ACCEPTED0.04 s2details
#7ACCEPTED0.03 s2details
#8ACCEPTED0.10 s2details
#9ACCEPTED0.04 s2details
#10ACCEPTED0.04 s2details
#11ACCEPTED0.73 s3details
#12ACCEPTED0.63 s3details
#13ACCEPTED0.53 s3details
#14ACCEPTED0.59 s3details
#15ACCEPTED0.57 s3details

Code


public class Q2 {
    
    public static void main(String[] fuckingCopyRightBreaker){
        
        IO io = new IO();
        
        int n = io.nextInt();
        long k = io.nextLong();
        
        long start = (long)(Math.sqrt(1 + 8 * k) / 2);
        
//        io.println(start - 1);
        
        long remainder = k - ((start + 1) * (start) / 2);
        
        
        while(remainder < 0){
            start--;
            remainder = k - ((start + 1) * (start) / 2);
        }
//        io.println(remainder);
        
        boolean increase = false;
        for(long j = start; j < n;){
            
            io.print((j + 1) + " ");
            
            if(j == remainder)
                if(remainder != 0)
                    io.print(start + 2 + " ");
            
            if(j == 0){
                increase = true;
                j = start + 1;
                if(remainder == 0)
                    j--;
            }
            
            if(increase)
                j++;
            else
                j--;
        }
        
        io.close();
    }
    
    
    
    
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
5 0

correct output
1 2 3 4 5 

user output
1 2 3 4 5 

Test 2

Group: 1

Verdict: ACCEPTED

input
5 10

correct output
5 4 3 2 1 

user output
5 4 3 2 1 

Test 3

Group: 1

Verdict: ACCEPTED

input
5 3

correct output
4 1 2 3 5 

user output
3 2 1 4 5 

Test 4

Group: 1

Verdict: ACCEPTED

input
5 1

correct output
2 1 3 4 5 

user output
2 1 3 4 5 

Test 5

Group: 1

Verdict: ACCEPTED

input
5 2

correct output
3 1 2 4 5 

user output
2 3 1 4 5 

Test 6

Group: 2

Verdict: ACCEPTED

input
100 0

correct output
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

user output
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

Test 7

Group: 2

Verdict: ACCEPTED

input
100 4950

correct output
100 99 98 97 96 95 94 93 92 91...

user output
100 99 98 97 96 95 94 93 92 91...

Test 8

Group: 2

Verdict: ACCEPTED

input
100 2279

correct output
100 99 98 97 96 95 94 93 92 91...

user output
68 67 66 65 64 63 62 61 60 59 ...

Test 9

Group: 2

Verdict: ACCEPTED

input
100 2528

correct output
100 99 98 97 96 95 94 93 92 91...

user output
71 70 69 68 67 66 65 64 63 62 ...

Test 10

Group: 2

Verdict: ACCEPTED

input
100 4483

correct output
100 99 98 97 96 95 94 93 92 91...

user output
95 94 93 92 91 90 89 88 87 86 ...

Test 11

Group: 3

Verdict: ACCEPTED

input
100000 0

correct output
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

user output
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

Test 12

Group: 3

Verdict: ACCEPTED

input
100000 4999950000

correct output
100000 99999 99998 99997 99996...

user output
100000 99999 99998 99997 99996...

Test 13

Group: 3

Verdict: ACCEPTED

input
100000 2969035543

correct output
100000 99999 99998 99997 99996...

user output
77059 77058 77057 77056 77055 ...

Test 14

Group: 3

Verdict: ACCEPTED

input
100000 2495939870

correct output
100000 99999 99998 99997 99996...

user output
70653 70652 70651 70650 70649 ...

Test 15

Group: 3

Verdict: ACCEPTED

input
100000 1279770330

correct output
100000 99999 99998 99997 99996...

user output
50592 50591 50590 50589 50588 ...