n*m的棋盘
题目:
分析:递归法每次向右、向下走(行规模减1此时列规模不变,加上列规模减1此时行规模不变),递归出口是行列规模都是0就返回0,只要有一个是0,就说只剩一条路了返回1即可。
#include <iostream>
using namespace std;
int process(int n, int m)
{
if (m == 0 && n == 0)
return 0;
if (m==0 || n==0)
return 1;
return process(m, n - 1) + process(m - 1, n);
}
int main()
{
int n;//长(列)
int m;//宽(行)
while(cin>>n>>m)
{
cout<<process(n, m)<<endl;
}
return 0;
}