整数划分问题
来源:互联网 发布:手机淘宝店头像怎么换 编辑:程序博客网 时间:2024/05/18 02:10
描述
将一个正整数n表示成一系列正整数之和,n=n1+ n2+…+ nk(其中,n1≥n2≥…≥nk≥1,k≥1).正整数n的这种表示称为正整数n的划分。正整数n的不同的划分个数称为正整数n的划分数,记作P(n)。
例如,正整数6有如下11种不同的划分,所以P(6)=11.
6;
5+1;
4+2,4+1+1;
3+3,3+2+1,3+1+1+1;
2+2+2,2+2+1+1,2+1+1+1+1;
1+1+1+1+1+1.
输入
测试文件有多个测试数据,每个测试数据为一个正整数n(1≤n≤100),占一行。
输出
对每个测试数据计算其划分数P(n),每个结果占一行。
样例输入
6
2
2
样例输出
11
2
2
提示
算法不能使用简单循环和简单递归算法
#include<iostream>#include<cstdio>using namespace std;int fun(int n,int m){ if(n<1||m<1) return 0; if(n==1||m==1) return 1; if(n<m) return fun(n,n); if(n==m) return fun(n,m-1)+1; return fun(n,m-1)+fun(n-m,m);}int main(){ int n,i,j,s; while(cin>>n) { if(n<1||n>100) break; cout<<fun(n,n)<<endl; }return 0;}
- 整数划分问题
- 整数划分的问题
- 整数划分问题
- [算法]整数划分问题
- 整数划分问题
- 【转】整数划分问题
- 整数划分问题解析
- 整数划分问题
- 整数划分问题
- 整数划分问题
- 整数划分问题
- 整数划分问题
- 整数划分问题 POJ1664
- 整数划分问题
- 整数划分问题
- 整数划分问题
- 整数划分问题
- 整数划分问题
- Android 4.1 android.os.NetworkOnMainThreadException
- 安装 TMS Aurelius 2.1 Full Source 遇到的问题和解决办法
- JSP生成验证码
- 开发技巧汇总
- Java学习之路:不走弯路,就是捷径
- 整数划分问题
- hdu_2544 最短路 (floyd算法)
- uva 188 Perfect Hash(进制转换 + 遍历)
- 关于多个div中table的td对齐问题
- 今天碰到Android2.3.3能运行的法度到android4.0中无法运行的景象
- poj-3045 Cow Acrobats
- 基于IPagedList 的 Asp.Net MVC3 分页
- tomcat数据源配置
- ImageButton设置背景透明后,点击显示button按下效果