33,027
社区成员




#include <iostream>
const int MY_LONG_LIMIT = 20100403;
int sum;
void Test(long n, long m)
{
if(n <=1 && m <= 1){
//结束条件
}else if(n > m){
for(long i=0; i < m; ++i){
Test(n-1, m-i);
}
}else if(n == m){
for(long i=1; i < m; ++i){//i从1开始
Test(n-1, m-i);
}
}
if(sum == MY_LONG_LIMIT){
sum = 0;
}else{
++sum;
}
}
int main()
{
sum = 0;
Test(2,2);//对输入不做检查了, 如要写Test(2,3)这样的, 本人不管
std::cout << sum << std::endl;
sum = 0;
//Test(20,19);
Test(100000,99999); //一个半小时的数据还没跑完
std::cout << sum << std::endl;
system("pause");
return 1;
}