题目描述:
给定一个浮点数序列(可能有正数、0和负数),求出一个最大的连续子序列乘积。
分析:若暴力求解,需要O(n^3)时间,太低效,故使用动态规划。
设data[i]:第i个数据,dp[i]:以第i个数结尾的连续子序列最大乘积,
若题目要求的是最大连续子序列和,则易确定状态转移方程为:
dp[i]=max(data[i],dp[i-1]+data[i])(dp[i]为以第...
分类:
其他好文 时间:
2014-09-30 18:55:59
阅读次数:
141
1. 给一个浮点数序列,取最大乘积连续子串的值,例如 -2.5,4,0,3,0.5,8,-1,则取出的最大乘积连续子串为3,0.5,8。2. 给定一个长度为N的整数数组,只允许用乘法,不能用除法,计算任意(N-1)个数的组合中乘积最大的一组,并写出算法的时间复杂度。3. 给定一个数组a[N],我们希...
分类:
其他好文 时间:
2014-09-26 00:54:37
阅读次数:
187
1121: 乘积最大题目描述今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目:设有一个长度为N的数字...
分类:
其他好文 时间:
2014-09-20 13:58:57
阅读次数:
209
给定一个长度为N的整数数组,只允许用乘法不允许用除法,计算N-1个数组合的乘积最大的一组,并写出算法的时间复杂度。去除第i个元素的乘积可以表示为A[0]*A[1]*…A[i-1] * A[i+1]*A[i+2]*…A[N-1]#include#includeusingnamespacestd;#de...
分类:
其他好文 时间:
2014-09-06 22:29:23
阅读次数:
210
原题
一根绳子,长度为n米。将其切成几段,每一段的长度都是整数。请给出一种切法,使得切成的各段绳子之间的乘积是最大的。注意,最少要切一下的。
分析
这个题目如何一步一步的分析呢?不管切几段,总有第一段,第二段…等等。第一段的长度有哪些选择呢?可以是1、2、3...一直到n-1(至少要切一下),我们用max_prod(n)表示长度为n的绳子的切法中,乘积最大的值。那么:
1. 当...
分类:
其他好文 时间:
2014-09-06 16:08:23
阅读次数:
224
给定一个长度为N的整数数组,只允许用乘法不允许用除法,计算N-1个数组合的乘积最大的一组,并写出算法的时间复杂度。long long s[MAXN];long long t[MAXN];int main(){ int n, i; cin >> n; for (i=1; i> A[i...
分类:
其他好文 时间:
2014-08-09 18:14:28
阅读次数:
206
1 /* 2 编程之美题,给定N个数的数组,只能使用乘法,不使用除法,找出N-1个数的乘积最大的一组,有两种方法,方法一:采用两个数组分别保存从左向右 3 和从又向左的两个乘积值,然后在扫描一次,求出最大乘积,空间换时间的方法。 4 方法二:通过分析这些数的性质,看有多少正数,多少负数,多...
分类:
其他好文 时间:
2014-07-25 02:25:04
阅读次数:
267
Feel Good
Time Limit: 3000MS
Memory Limit: 65536K
Total Submissions: 9186
Accepted: 2509
Case Time Limit: 1000MS
Special Judge
Description
Bill is developi...
分类:
其他好文 时间:
2014-07-21 11:21:15
阅读次数:
235
这个题目的意思是在一个含有N个数字的数组中,找出N-1个数字,使得这N-1个数字的乘积最大,不允许使用除法。 一开始看这个题的感觉可能是很简单,我只要找出这个数中最小的值,那么剩余的N-1个数的乘积一定是最大的。 但是这就忽略了一个情况,就是存在负数的情况。题目中并没有说是个正数的数组。因此...
分类:
其他好文 时间:
2014-06-17 13:53:22
阅读次数:
189
题意:即求给定n个数字(a1,a2,……an),不改变序列,分成M份,使每一份和的乘积最大。思路:dp[i][j]表示把前i个数字,分成j份所能得到的最大乘积。转移方程:dp[i][j]
= max{ dp[k][i-1]*sum(k+1,j) } 其中显然j#include #include #i...
分类:
其他好文 时间:
2014-06-02 19:58:45
阅读次数:
242