递归之整数的划分问题
来源:互联网 发布:淘宝刷単软件 编辑:程序博客网 时间:2024/05/22 08:07
整数的划分:以 4 为例 ,即将其写作:
4;
3+1;
2+2;
2+1+1;
1+1+1+1;
此处我们只讨论整数的划分一共有几种。即:
输入:整数 n
输出:n 的整数划分的种类数
分析:int divide(n,m)
设其中 m 表示在整数划分中数字的最大划分值,所求即为 divide(n,n)。
代码如下:
#include <iostream>using namespace std; int divide(int n,int m); int main() { int a,b; cout<<"输入一个要划分的整数:"<<endl; cin>>a; b=divide(a,a); cout<<"整数 "<<a<<" 的划分形式一共有 "<<b<<" 种!"<<endl; return 0;}int divide(int n,int m){ if(n==1||m==1){//n或m等于1,只有一种 return 1; } if(n<=m){//n=m,当划分中含有m时,1种,不含有m时 //divide(n,n-1)种。 //n<m相当于divide(n,n) return divide(n,n-1)+1; } if(n>m){//n>m时,当划分中含有m时,divide(n-m,m)种 //当划分中不含有m时 divide(n,m-1)种 return divide(n-m,m)+divide(n,m-1); }}
阅读全文
0 0
- 递归之整数的划分问题
- YTU.3131: 进阶递归之简单的整数划分问题
- 递归--整数划分问题
- 递归-整数划分问题
- 递归-整数划分问题
- 递归---整数划分问题
- 递归-整数划分问题
- 递归之整数划分
- 递归之整数划分
- 整数划分的拓展问题递归实现
- OpenJudge 简单的整数划分问题(递归)
- 递归之整数划分问题和排列问题
- 整数划分问题(递归算法)
- 整数划分问题 递归法
- 递归求解整数划分问题
- 整数划分问题 ----- 递归算法
- 整数划分问题递归算法
- 整数划分问题(递归)
- 使用spring-boot集成dubbo的日志
- 连续信号的傅里叶变换
- 简单图形
- 01-常用对象API(String类-特点)1 2 02-常用对象API(String类-构造函数)
- 2017-11-18-mongo-笔记
- 递归之整数的划分问题
- IP协议协议--IP头部信息
- 计算机的启动
- UML基础知识
- springboot quartz 多任务整合
- Python笔记——(一)文本编码
- ID3—决策树算法
- 使用navicat的SSH隧道连接数据库
- C++工厂模式汇总