Step 1: n ==1 : return 1 n == 2 : return [1,1],[2]Step 2:for n > 2a.arr.push(n)b.arr.push([n-1,1])c.1 get result of recursion(n-2)c.2 combine n==2 & r ...
分类:
其他好文 时间:
2017-07-09 10:59:49
阅读次数:
176
这边博客对于整数划分问题,仅仅要求求出对于每个整数可以划分的种类数,採用金典的递归的办法解决。 #include<iostream> using namespace std; /* *整数划分问题(仅仅显示种类数) */ int GetIntDivision(int n,int m) { if(n= ...
分类:
其他好文 时间:
2017-06-19 09:59:47
阅读次数:
133
Description 从文件中读入一个正整数n(10≤n≤31000)。要求将n写成若干个正整数之和,并且使这些正整数的乘积最大。 例如,n=13,则当n表示为4+3+3+3(或2+2+3+3+3)时,乘积=108为最大。 Input 只有一个正整数: n (10≤n≤31000) Output ...
分类:
其他好文 时间:
2017-06-16 19:28:53
阅读次数:
173
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1201 题解:显然是一道dp,不妨设dp[i][j]表示数字i分成j个一共有几种分法。 那么转移方程式为: dp[i][j] = dp[i - 1][j] + d ...
分类:
其他好文 时间:
2017-06-03 23:35:36
阅读次数:
364
整数划分 --- 一个老生长谈的问题: 1) 练练组合数学能力. 2) 练练递归思想 3) 练练DP 总之是一道经典的不能再经典的题目: 这道好题求: 1. 将n划分成若干正整数之和的划分数。 2. 将n划分成k个正整数之和的划分数。 3. 将n划分成最大数不超过k的划分数。 4. 将n划分成若干奇 ...
分类:
其他好文 时间:
2017-05-26 23:27:35
阅读次数:
295
要求对一个n的整数插入m个乘号,求最大结果。 构造dp:dp[i][j]表示枚举至j时,插入i个乘号的状态。 那么dp[i][j]=dp[i-1][k]*sum(k+1,j)。 ...
分类:
其他好文 时间:
2017-04-30 10:58:27
阅读次数:
161
1259 整数划分 V2 基准时间限制:1 秒 空间限制:131072 KB 1259 整数划分 V2 基准时间限制:1 秒 空间限制:131072 KB 1259 整数划分 V2 基准时间限制:1 秒 空间限制:131072 KB 将N分为若干个整数的和,有多少种不同的划分方式,例如:n = 4, ...
分类:
其他好文 时间:
2017-04-28 20:33:25
阅读次数:
206
基准时间限制:1 秒 空间限制:131072 KB 基准时间限制:1 秒 空间限制:131072 KB 基准时间限制:1 秒 空间限制:131072 KB 将N分为若干个不同整数的和,有多少种不同的划分方式,例如:n = 6,{6} {1,5} {2,4} {1,2,3},共4种。由于数据较大,输出 ...
分类:
其他好文 时间:
2017-04-17 23:04:52
阅读次数:
321
poj1664放苹果 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 33661 Accepted: 20824 Description 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表 ...
分类:
移动开发 时间:
2017-04-08 16:07:21
阅读次数:
241
问题描述:将正整数n划分成一系列正整数之和,输出n的全部划分个数。 例如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; 6; 5+1; 4+2, 4+1+1; 3+3, ...
分类:
其他好文 时间:
2017-03-22 22:48:01
阅读次数:
177