UVa11059 Maximum Product

原创 2016年05月31日 23:24:42

来源:《算法竞赛入门经典(第二版)》例题7-2、UVa11059

题意描述:
给定一个序列,求各元素之积最大的连续子序列。
题目分析
最标准的枚举题,没啥好说的。乘积上限是1018,用long long足以,没有非要写大整数。哦对了,UVa的特点是不少题输出格式特麻烦,小心看题远离PE。

//  Created by wander on 16/5/27.
//  Copyright © 2016年 W4anD0eR96. All rights reserved.
//  UVa11059 Maximum Product
//  类型:枚举-子区间枚举

#include "bits/stdc++.h"
using namespace std;

int n, kase;

int main() {
#ifdef DEBUG
  freopen("in", "r", stdin);
  freopen("out", "w", stdout);
#endif
  while (~scanf("%d", &n)) {
    // input and pre-process
    vector<long long> v;
    long long res = 0, t = 0;
    for (int i = 0; i < n; i += 1) {
      scanf("%lld", &t); v.push_back(t);
    }
    // work
    for (int i = 0; i < n; i += 1)            // 枚举起点
      for (int j = i; j < n; j += 1) {        // 枚举终点,注意只有一个数的子区间
        t = 1; for (int k = i; k <= j; k += 1) t *= v[k];
        if (t > res) res = t;
      }
    // output
    printf("Case #%d: The maximum product is %lld.\n\n", (kase += 1), res);
  }
  return 0;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

[UVA11059]Maximum Product[暴力]

题目链接:[UVA11059]Maximum Product[暴力] 题意分析:给出一个序列,问这个序列中最大连续累乘的子序列中,最大的值为多少,如果都为负数,则输出0. 解题思路:整个元素最多有18...

Uva - 11059 - Maximum Product

Given a sequence of integers S = {S1, S2, ..., Sn}, you should determine what is the value of the ma...

UVA 11059 - Maximum Product

最大连续积。刘汝佳的算法竞赛入门经典提供了一个简单的O(n^2) 的方法,但通过分治,可以把最大连续积降到O(n*logn)。通过贪心算法,进而可以把最大连续积的时间复杂度降到O(n)。
  • nxjhi
  • nxjhi
  • 2016-04-30 23:39
  • 148

UVa - 11059 - Maximum Product(枚举)

题目意思:输入n,然后输入n个数字,求子阵列的最大乘积是多少,如果最大乘积是负数,那么输出0。每组输出后面有一个空行,最后一组也有空行。 思路:枚举出所有的子阵列,求出其中最大乘积是多少(包括一个元...

UVA - 11059 Maximum Product (简单枚举)

Problem D - Maximum Product Time Limit: 1 second Given a sequence of integers S = {S1, S2, ..., Sn...

UVa 11509 Maximum Product(最大乘积)

题目链接:UVa 11509 题意: 输入n个元素组成的序列S,你需要找出一个乘积最大的连续子序列。如果这个最大的乘积不是正数,应输出0(表示无解)。1 分析: 两层循环对每个s[i]求最大连...

UVA #725 #11059 #10976 (例题7-1 7-2 7-3)

终于到了第七章暴力求解法,上来三道小题热身。。 UVa #725 Division 例题 7-1 看到这题的数据吓尿了,太惨烈了。题目完全没有数据显示出来的难度,不过中间的小细节还是要像对待难题一...

UVA 11059(水题)

【题目大意】 给定一个序列S,最多18个元素,每个元素的范围都是-10到10,对于这个序列S的所有连续子序列,求这些连续子序列中最大的正积。如果最大的积是负数,答案视为0。 【解法】 两重循环,...

Maximum Product of Word Lengths

  • 2016-04-16 09:53
  • 710B
  • 下载

uva725除法uva11059最大乘积uva10976分数拆分(暴力求解法)

原题链接: 725:   https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_probl...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)