全排列并且计算类似杨辉三角问题
#include<iostream>
#include<stdio.h>
#include<algorithm>
#include<stdlib.h>
#include<string.h>
#include<vector>
#include<numeric>
#include<math.h>
#define pi acos(-1.0)
using namespace std;
typedef unsigned long long ULL;
int a[11],b[11];
int n,sum;
int cal()
{
for(int i=0;i<n;i++)
b[i]=a[i];
for(int j=n;j>0;j--)
for(int i=0;i<j-1;i++)
b[i]+=b[i+1];
return b[0];
}
int main()
{
ios::sync_with_stdio(false);cin.tie(0);
scanf("%d%d",&n,&sum);
for(int i=0;i<n;i++)
a[i]=i+1;
do{
if(cal()==sum)
{
for(int i=0;i<n;i++)
printf("%d ",a[i]);
break;
}
}while(next_permutation(a,a+n));
return 0;
}