Task: | Bittijono |
Sender: | YvMa^Na9 |
Submission time: | 2016-10-04 17:36:47 +0300 |
Language: | Java |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 10 |
#2 | ACCEPTED | 19 |
#3 | ACCEPTED | 71 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.15 s | 1 | details |
#2 | ACCEPTED | 1.02 s | 2 | details |
#3 | ACCEPTED | 1.31 s | 3 | details |
Code
import java.util.Scanner; public class bittijono { public static void main (String[] args) { Scanner scan = new Scanner(System.in); int j = scan.nextInt(); long[] a = new long[j]; int[] results = new int[j]; for (int i = 0; i < j; i++) { long c = scan.nextLong(); Boolean b = false; int x = log(c, 2) + 1; for (int k = x; k > -1; k--) { // System.out.println("K:" + k); long temp = c - (long) Math.pow(2,k); if (temp > 0) { // System.out.println("temp:" + temp); c = temp; b = !b; if (c == 1) { break; } } } //System.out.println(b); results[i] = (b) ? 1 : 0; } for (int i : results) { System.out.println(i); } } static int log(long x, int base) { return (int) (Math.log(x) / Math.log(base)); } }
Test details
Test 1
Group: 1
Verdict: ACCEPTED
input |
---|
100 62 9 12 73 ... |
correct output |
---|
1 1 1 0 1 ... |
user output |
---|
1 1 1 0 1 ... |
Test 2
Group: 2
Verdict: ACCEPTED
input |
---|
100000 565433 141881 120108 825392 ... |
correct output |
---|
1 1 0 0 1 ... |
user output |
---|
1 1 0 0 1 ... |
Test 3
Group: 3
Verdict: ACCEPTED
input |
---|
100000 374768524402011755 937067109466254318 389256426086302899 932585725667010169 ... |
correct output |
---|
0 1 1 1 1 ... |
user output |
---|
0 1 1 1 1 ... |