CSES - Datatähti 2017 alku - Results
Submission details
Task:Bittijono
Sender:JesseNiininen
Submission time:2016-10-05 01:46:25 +0300
Language:Java
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.14 s1details
#20.86 s2details
#30.13 s3details

Code

import java.util.Scanner;

public class Bittijono {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        int n = Integer.parseInt(scanner.nextLine());
        
        while(n-- > 0){
            int k = Integer.parseInt(scanner.nextLine());
            
            int power = (int)Math.floor(Math.log(k) / Math.log(2));
            int maxIndex = pow(2, power);
            int index = k - pow(2, power);
            
            boolean guess = true;
            
            while(k > 1){
                if(k > k / 2)
                    guess = !guess;
                k -= maxIndex / 2;
                maxIndex /= 2;
            }
            
            if(guess)
                System.out.println(0);
            else
                System.out.println(1);
        }
        
    }
    
    private static int pow(int a, int b){
        if(b == 0)
            return 1;
        int result = a;
        while(b-- > 0){
            result *= a; 
        }
        return result;
    }
    
}

Test details

Test 1

Group: 1

Verdict:

input
100
62
9
12
73
...

correct output
1
1
1
0
1
...

user output
1
1
0
0
1
...

Test 2

Group: 2

Verdict:

input
100000
565433
141881
120108
825392
...

correct output
1
1
0
0
1
...

user output
0
0
0
1
0
...

Test 3

Group: 3

Verdict:

input
100000
374768524402011755
937067109466254318
389256426086302899
932585725667010169
...

correct output
0
1
1
1
1
...

user output
(empty)

Error:
Exception in thread "main" java.lang.NumberFormatException: For input string: "374768524402011755"
	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
	at java.lang.Integer.parseInt(Integer.java:583)
	at java.lang.Integer.parseInt(Integer.java:615)
	at Bittijono.main(Bittijono.java:11)