60分求助
查看原帖
60分求助
534794
Clot230王凯正楼主2021/10/6 14:48
#include <bits/stdc++.h>
#define ll long long

using namespace std;


string bf(int n, ll k)
{
    if (!n) 
		return "";
    if(k < (1 << n - 1)) 
		return "0" + bf(n - 1, k);
    else
    {
        ll t = (1 << n) - 1;
        if(n == 64) 
			t = -1;
        return "1" + bf(n - 1, t - k);
    }
}
int n;
ll k;
int main()
{
//    freopen("code.in", "r", stdin);
//	freopen("code.out", "w", stdout);
	scanf("%d%lld", &n, &k);
//	printf(" ** ");
	cout << bf(n, k);
    return 0;
}
2021/10/6 14:48
加载中...