递归之整数划分

#include<iostream>
#include<sstream>
#include<vector>
#include<string>
#include<algorithm>
//#include<map>
using namespace std;

int Fun(int n,int m)
{
	if(n==1||m==1)
	{
		return 1;
	}
	else if(n<m)
	{
		return Fun(n,n);
	}
	else if(n==m)
	{
		return 1+Fun(n,m-1);
	}
	else if(n>m)
	{
		return Fun(n-m,m)+Fun(n,m-1);
	}
}
 
int main()
{
	int inputnum=0;
	
	while(scanf("%d",&inputnum)!=EOF)
	{
		cout<<Fun(inputnum,inputnum)<<endl;
	}
	
	return 0;
}
发布了211 篇原创文章 · 获赞 18 · 访问量 74万+

猜你喜欢

转载自blog.csdn.net/nanfeiyannan/article/details/104887682
今日推荐