最大乘积(暴力)
来源:互联网 发布:局域网网络行为监控 编辑:程序博客网 时间:2024/05/16 05:25
输入n个元素组成的序列S,你需要找出一个乘积最大的连续子序列。如果这个最大的乘积不是正整,应输出-1(表示无解)。1≤n≤18,-10≤Si≤10。
样例输入:
3
2 4-3
5
2 5-1 2 -1
样例输出:
8
20
【分析】
连续子序列有两个要素:起点和终点,因此只需要枚举起点和终点即可。由于每个元素的绝对值不超过10,一共又不超过18个元素,最大可能的乘积示会超过1018,可以用long long存下。
完整的程序如下:
#include<iostream>#include<string.h>#include<stdio.h>#include<ctype.h>#include<algorithm>#include<stack>#include<queue>#include<math.h>using namespace std;int a[30];int i,j;int main(){ int n; int w; long long ans; while(scanf("%d",&n)!=EOF) { for(i=0; i<n; i++) scanf("%d",&a[i]); ans=0; for(i=0; i<n; i++) { w=1; for(j=0; j<n; j++) { w*=a[j]; if(w>ans) ans=w; } } if(ans>=0) printf("%d\n",ans); else printf("-1\n"); } return 0;}
- 最大乘积(暴力)
- 暴力求解法 最大乘积
- PAT 1096 Consecutive Factors (暴力,最大连续乘积)
- UVA 11059 Maximum Product最大乘积(暴力法)
- uva725除法uva11059最大乘积uva10976分数拆分(暴力求解法)
- 乘积最大(DP)
- uva11059(最大乘积)
- 算法竞赛入门 暴力求解法 7.1.2 最大乘积
- 暴力求解法_简单枚举(除法,最大乘积法,分数拆分,双基回文数)
- 蓝桥杯 乘积最大(dfs)
- 乘积最大(动态规划)
- 乘积最大(加乘)
- 乘积最大codevs1017(noip2000)
- (ssl 1007)乘积最大
- 最大乘积
- 乘积最大
- 乘积最大
- 乘积最大
- 深入浅出Node.js(二):Node.js&NPM的安装与配置
- 开源项目托管站点SourceForge, Google Code, CodePlex
- for in 循环(JavaScript)
- hdu——Rotten Ropes
- 关于extern "C"(详细剖析)
- 最大乘积(暴力)
- 七种qsort排序方法
- C#中关于时间类型
- 系统调用原理
- ScriptManager的简单用法
- JAVA匿名内部类
- c++ windows下读取大文件(内存映射)
- hdu 2255 奔小康赚大钱 (KM算法 二分图最佳完美匹配 模板)
- <Win32_10>子窗口的应用——翻转窗口