代码:
#include<bits/stdc++.h>
#define int long long
using namespace std;
long long a[20],b[20];
signed main(){
int n,sum;
cin>>n>>sum;
a[1]=1;
b[1]=1;
for(int i=2;i<=n;i++){
b[i]=i;
for(int j=i;j;j--){
a[j]=a[j]+a[j-1];
}
}
do{
long long ans=0;
bool f=true;
for(int i=1;i<=n;i++){
ans=ans+a[i]*b[i];
if(ans>sum) break;
}
if(ans==sum){
for(int i=1;i<=n;i++) cout<<b[i]<<" ";
return 0;
}
}while(next_permutation(b+1,b+n+1));
return 0;
}