Submission details
Task:Tickets
Sender:intoo
Submission time:2018-07-23 15:04:07 +0300
Language:C++
Status:READY
Result:30
Feedback
groupverdictscore
#1ACCEPTED30
#20
Test results
testverdicttimegroup
#1ACCEPTED0.02 s1details
#2ACCEPTED0.03 s1details
#3ACCEPTED0.06 s1details
#4--2details
#5--2details
#6--2details
#7--2details
#8--2details
#9--2details
#10--2details

Code

#include <iostream>
#include <vector>
#include <algorithm>
#define ll long long

using namespace std;

vector<vector<bool>> codes(ll n) {
	vector<vector<bool>> gc;
	if (n == 1) gc = {{0},{1}};
	else {
		gc = codes(n-1);
		for (ll i = (1<<(n-1))-1; i >= 0; i--) {
			gc.push_back(gc[i]);
		}
		for (ll i = 0; i < (1<<(n-1)); i++) {
			gc[i].push_back(0);
		}
		for (ll i = 1<<(n-1); i < (1<<n); i++) {
			gc[i].push_back(1);
		}
	}
	return gc;
}

int main() {
	ll k, n;
	cin >> n >> k;
	if (n > 1) {
		auto c = codes(n-1);
		if (k-1 < 1<<(n-1)) cout << 0;
		else {
			cout << 1;
			reverse(c.begin(),c.end());
		}
		auto g = c[(k-1)%(1<<(n-1))];
		for (int i = n-2; i >= 0; i--) cout << g[i];
	} else {
		auto g = codes(n)[k-1];
		cout << g[0];
	}
	cout << endl;
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
7 85

correct output
1111110

user output
1111110

Test 2

Group: 1

Verdict: ACCEPTED

input
13 173

correct output
0000011111010

user output
0000011111010

Test 3

Group: 1

Verdict: ACCEPTED

input
19 506935

correct output
1000110001000101101

user output
1000110001000101101

Test 4

Group: 2

Verdict:

input
33 7115188065

correct output
101111100000101011011010011010...

user output
(empty)

Test 5

Group: 2

Verdict:

input
38 262459861045

correct output
100011100101100011101001111100...

user output
(empty)

Test 6

Group: 2

Verdict:

input
45 26770081139000

correct output
101000111010010010111101110111...

user output
(empty)

Test 7

Group: 2

Verdict:

input
49 144198060398585

correct output
011000010101101110110011100111...

user output
(empty)

Test 8

Group: 2

Verdict:

input
52 1688586557587460

correct output
011100000000001000111110100100...

user output
(empty)

Test 9

Group: 2

Verdict:

input
58 50090466019539205

correct output
001110100100001111100000101100...

user output
(empty)

Test 10

Group: 2

Verdict:

input
62 436075923621359553

correct output
000101000010111110000011100011...

user output
(empty)