递归思路很优雅,当然你用排列组合更优雅
#include <algorithm>
using namespace std;
int dfs(int x,int y,const int&n,const int&m){
if(x>n||y>m) return 0;
if(x==n&&(y==m)) return 1;
return dfs(x+1,y,n,m)+dfs(x,y+1,n,m);
}
int main() {
int n,m;
while(cin>>n>>m){
int cnt = 0;
cnt = dfs(0,0,n,m);
cout<<cnt<<endl;
}
}