#include<bits/stdc++.h>
using namespace std;
long long n,k;
void calc(long long n,long long k){
if(n==1){
k==1?cout<<0:cout<<1;
return;
}
if(k>pow(2,n-1)){
cout<<1;
calc(n-1,pow(2,n-1)-(k-pow(2,n-1))+1);
}
else{
cout<<0;
calc(n-1,k);
}
}
int main(){
cin>>n>>k;
calc(n,k+1);
return 0;
}
说明:calc函数是用来计算当前第n位应该填1还是0,如果大于2^(n-1)就填1,然后递归,否则就填0,然后递归。