链接:题目要不要酱
hd[n-1][m]代表的是hd[n][m]以D结尾时,则前面就是hd[n-1]的数目,同样的hd[n][m-1]也是一个意思。
#include <iostream>
#include <cstdio>
#include <iostream>
#include <cmath>
#include <algorithm>
#include <cstdio>
#include <stdio.h>
#include <math.h>
using namespace std;
__int64 hd[30][30];
int main()
{
for(int i = 0; i < 30; i++)
hd[i][0] = 1, hd[0][i] = 0;
for(int i = 1; i <= 20; i++)
{
for(int j = 1; j <= i; j++)
{
hd[i][j] = hd[i-1][j] + hd[i][j-1];
}
}
int m, n;
while(scanf("%d%d", &m, &n) != EOF) printf("%I64d\n", hd[m][n]);
return 0;
}