CSES - Datatähti 2017 alku - Results
Submission details
Task:Bittijono
Sender:3isagreatnumber
Submission time:2016-10-05 13:16:25 +0300
Language:C++
Status:READY
Result:29
Feedback
groupverdictscore
#1ACCEPTED10
#2ACCEPTED19
#30
Test results
testverdicttimegroup
#1ACCEPTED0.05 s1details
#2ACCEPTED0.08 s2details
#31.19 s3details

Code

#include <iostream>
#include <string>
#include <math.h>
#include <vector>
#define ull unsigned long long

using namespace std;

string gen(ull);
string inv(string);

int main(void)
{
    int n;
    cin >> n;
    vector<int> ks;

    int max = 0;
    int k;
    for (int i = 0; i < n; i++)
    {
        cin >> k;
        ks.push_back(k);
        if (k > max) max = k;
    }

    string s = gen(max);

    for (int i = 0; i < n; i++)
    {
        cout << s[ks[i]-1] << '\n';
    }
}

string gen(ull k_max)
{
    int n = ceil(log(float(k_max))/log(2.0)+1);

    string s = "0";
    for (int i = 1; i < n; i++)
    {
        s+=inv(s);
    }
    return s;
}

string inv(string s)
{
    for (int i = 0, l = s.length(); i < l; i++)
    {
        if (s[i] == '1') s[i] = '0';
        else s[i] = '1';
    }
    return s;
}

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:

input
100000
374768524402011755
937067109466254318
389256426086302899
932585725667010169
...

correct output
0
1
1
1
1
...

user output
(empty)