poj 1664 放苹果

本题是参考了poj 的评论做的,确实十分经典,应该多向大牛们学习,
最少的盘子放了一个,这样每个盘子至少一个,n个盘子先放上n个,剩下的m-n个可以随便放
最少的盘子没有放,这样剩下的n-1个盘子还是随便放m个

 

#include<iostream>
using namespace std;
int f(int m,int n)
{
if(m<0)
return 0;
if(m == 0 || n ==1)
return 1;
return f(m-n,n)+f(m,n-1);//
}
int main()
{
int t, m,n;
cin>>t;
while(t--)
{
cin>>m>>n;
cout<<f(m,n)<<endl;
}
}

posted on 2012-10-28 16:37  元点之始  阅读(153)  评论(0编辑  收藏  举报

导航