CSES - Datatähti 2017 alku - Results
Submission details
Task:Bittijono
Sender:ooh
Submission time:2016-10-04 12:56:36 +0300
Language:C++
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.05 s1details
#20.19 s2details
#30.34 s3details

Code

#include <iostream>
#include <cmath>

using std::cout;
using std::endl;
using std::cin;

int main (int argc, char** argv) {
  unsigned long long n;
  cin >> n;

  for (; n>0; n--) {
    unsigned long long pos;
    cin >> pos;

    unsigned long long i = 0;

    while (pos != 1) {
      unsigned long long x = floor(log2(pos));
      unsigned long long delta = pos - exp2(x);
//      cout << "x=" << x << " delta=" << delta << " pos=" << pos << endl;
      if (delta == 0) {
        i = x;
        break;
      } else {
        pos = delta;
      }

      i++;
    }

    cout << (i%2 == 0 ? "0" : "1") << endl;
  }

  return 0;
}

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
1
1
0
0
1
...

Test 3

Group: 3

Verdict:

input
100000
374768524402011755
937067109466254318
389256426086302899
932585725667010169
...

correct output
0
1
1
1
1
...

user output
1
0
0
1
1
...