Submission details
Task:Bittilista
Sender:hltk
Submission time:2019-05-17 17:46:02 +0300
Language:C++
Status:READY
Result:45
Feedback
groupverdictscore
#1ACCEPTED17
#2ACCEPTED28
#30
Test results
testverdicttimegroup
#1ACCEPTED0.03 s1details
#2ACCEPTED0.02 s1details
#3ACCEPTED0.04 s1details
#4ACCEPTED0.03 s1details
#5ACCEPTED0.03 s1details
#6ACCEPTED0.02 s2details
#7ACCEPTED0.02 s2details
#8ACCEPTED0.03 s2details
#9ACCEPTED0.01 s2details
#10ACCEPTED0.03 s2details
#110.02 s3details
#120.02 s3details
#130.02 s3details
#140.02 s3details
#150.03 s3details

Code

#include <bits/stdc++.h>
using namespace std;

#define g(x, j) (x & (1 << (j)))

int main()
{
	long n, k;
	cin >> n >> k;
	long o = 1l << (n - 1);
	if (!(n - 1)) {
		cout << k - 1 << endl;
	}
	else if (k <= o / 2) {
		--k;
		cout << 0;
		for (int j = n - 3; j >= 0; --j) {
			cout << !!g(k, j);
		}
		cout << 0;
	}
	else {
		cout << 1;
		k = k - 1 - o / 2;
		for (int j = n - 3; j >= 0; --j) {
			cout << !!g(k, j);
		}
		cout << 1;
	}
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
10 54

correct output
0001101010

user output
0001101010

Test 2

Group: 1

Verdict: ACCEPTED

input
10 302

correct output
1001011011

user output
1001011011

Test 3

Group: 1

Verdict: ACCEPTED

input
10 241

correct output
0111100000

user output
0111100000

Test 4

Group: 1

Verdict: ACCEPTED

input
10 382

correct output
1011111011

user output
1011111011

Test 5

Group: 1

Verdict: ACCEPTED

input
10 138

correct output
0100010010

user output
0100010010

Test 6

Group: 2

Verdict: ACCEPTED

input
20 131002

correct output
00111111111101110010

user output
00111111111101110010

Test 7

Group: 2

Verdict: ACCEPTED

input
20 441567

correct output
11010111100110111101

user output
11010111100110111101

Test 8

Group: 2

Verdict: ACCEPTED

input
20 109770

correct output
00110101100110010010

user output
00110101100110010010

Test 9

Group: 2

Verdict: ACCEPTED

input
20 327308

correct output
10011111110100010111

user output
10011111110100010111

Test 10

Group: 2

Verdict: ACCEPTED

input
20 302918

correct output
10010011111010001011

user output
10010011111010001011

Test 11

Group: 3

Verdict:

input
50 216967103451763

correct output
011000101010101001001011100100...

user output
000010010011100101001011100100...

Test 12

Group: 3

Verdict:

input
50 236618662270629

correct output
011010111001101000001001101001...

user output
011010110101001001001001101001...

Test 13

Group: 3

Verdict:

input
50 426560943304480

correct output
110000011111101000111010110000...

user output
100101111000111111111010110000...

Test 14

Group: 3

Verdict:

input
50 294553802415801

correct output
100001011111001010010011011000...

user output
110011110101110001010011011000...

Test 15

Group: 3

Verdict:

input
50 502225394100883

correct output
111001000110001010111011000110...

user output
101101010100100101111011000110...