17和20两个点没过,求大佬帮帮
代码
#include<iostream>
#include<cmath>
#include<cstring>
using namespace std;
string dp(int n,long long k){
cout<<k<<endl;
if(n==1){
if(k==0){
return "0";
}
else
{
return "1";
}
}
else{
if(k>=pow(2,n-1)){
return dp(n-1,pow(2,n)-1-k).append("1");
}
else{
return dp(n-1,k).append("0");
}
}
}
int main()
{
unsigned int n;
unsigned long long k;
cin>>n>>k;
string a=dp(n,k);
for(int i=a.length()-1;i>=0;i--)
{
cout<<a[i];
}
return 0;
}
谢谢大佬