P1118 数字三角形【杨辉三角+全排列】

#include
using namespace std;
int a[20][20];
int b[20];
int c[20][20];
int cmp(int a,int b)
{
	return a>b;
}
int main()
{
    int n=1,sum;
    cin>>n>>sum;
    for(int i=1;i<=n;i++)
    b[i]=i;
    int s=0;
    for(int i=1;i<=n;i++)
	{
		c[i][1]=c[i][i]=1;
	}
	for(int i=3;i<=n;i++)
	{
		for(int j=1;j<=(i-1)/2;j++)
		{
			c[i][j+1]=c[i][i-j]=c[i-1][j]+c[i-1][j+1];
		}
		
	}
    if(sumsum) sort(b+i,b+1+n,cmp);
		}
		
    	for(int i=1;i<=n/2;i++)
    	{
    		if(b[i]>b[n-i+1]) 
    		{
    			ok=0;break;
			}
		}
		if(ok==0) continue;
    	for(int i=1;i<=n;i++)
    	a[1][i]=b[i];
    	for(int i=2;i<=n;i++)
    	{
    		for(int j=1;j<=n-i+1;j++)
    		{
    			a[i][j]=a[i-1][j]+a[i-1][j+1];
    			
			}
		}
		if(a[n][1]==sum) 
		{
			for(int i=1;i

 

你可能感兴趣的:(数学)