题目大意:
看例子就知道题意了,算法书上的原题
解题思路:
基础动态规划
代码如下:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
int main()
{
int i, j, a;
int n[130][130];
for(i=0; i<130; i++) n[i][1] = n[1][i] = 1;
for(i=2; i<130; i++)
{
for(j=2; j<130; j++)
{
if(i>j) n[i][j] = n[i][j-1] + n[i-j][j];
else if(i==j) n[i][j] = 1 + n[i][j-1];
else n[i][j] = n[i][i];
}
}
while(scanf("%d",&a)!=EOF)
{
printf("%d\n",n[a][a]);
}
return 0;
}