首页 > 学院 > 开发设计 > 正文

666放苹果

2019-11-06 07:23:40
字体:
来源:转载
供稿:网友
#include<cstdio>#include<iostream>#include<cmath>#include<algorithm>#include<cstring>using namespace std;int dg(int m,int n)//m个苹果放到n个盘子里 {	if(m==1 || m==0 || n==1) return 1;//判断只有一个方法放苹果的情况 	else if(m<n) return dg(m,m);	//否则判断苹果数是否少于盘子数,如果少,那么肯定有n-m个空盘子	//所以只要做把m个苹果放到m个盘子里 	else return dg(m-n,n)+dg(m,n-1);	//否则m-n个盘子起码有一个苹果,即只要把m-n个苹果放到n个盘子里	//还要加上这个盘子不放的情况 } int main(){	int t;	cin>>t;	while(t)	{  	    int m,n;    	cin>>m>>n;    	cout<<dg(m,n)<<endl;    	t--;    }}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表