rt,求助
#include<bits/stdc++.h>
using namespace std;
int n,k;
int a[32];
void findsub(int now,int up){
if(now>n)return;
if(now!=0)
cout<<now<<" ";
int cnt=0;
for(int i=up-1;i>=0;i--){
cnt+=1<<i;
if(cnt>=k){
k-=cnt-1<<i;
findsub(now+up-i,i);
break;
}
}
}
int main(){
cin>>n>>k;
if(k==1){
cout<<0;
return 0;
}
k--;
findsub(0,n);
return 0;
}
'''