zoukankan      html  css  js  c++  java
  • UVA 11059 Maximum Product(枚举start+end)

    题目大意:

      就是说给你n个数字,然后求出连续序列的最大和。如果ans为负数就输出0,要么就输出这个ans。

    解题思路:

      其实我们只需要枚举起点和终点,然后考虑所有的情况就可以了,有点类似于求解最大连续和的问题。

    唯一的不同就是每次都要初始化t = 1, t*=a[j]。注意long long。因为最多有18个数字,且每个数字的

    最大值为10,那么他们的乘积是不会超过10^18的。

    代码:

    # include<cstdio>
    # include<iostream>
    # include<algorithm>
    # include<functional>
    # include<cstring>
    # include<string>
    # include<cstdlib>
    # include<iomanip>
    # include<numeric>
    # include<cctype>
    # include<cmath>
    # include<ctime>
    # include<queue>
    # include<stack>
    # include<list>
    # include<set>
    # include<map>
    
    using namespace std;
    
    const double PI=4.0*atan(1.0);
    
    typedef long long LL;
    typedef unsigned long long ULL;
    
    # define inf 999999999
    # define MAX 23
    
    int a[MAX];
    
    int n;
    
    int main(void)
    {
        int icase = 1;
        while ( cin>>n )
        {
            for ( int i = 1;i <= n;i++)
        {
            cin>>a[i];
        }
        LL ans = 0;
        for ( int i = 1;i <= n;i++ )
        {
            LL t = 1;
            //ans = max(ans,t);
            for ( int j = i;j <= n;j++ )
            {
                t*=a[j];
                ans = max(ans,t);
            }
        }
        printf("Case #%d: The maximum product is %lld.
    
    ",icase++,ans);
    
        }
    
    
        return 0;
    }
    View Code
  • 相关阅读:
    kettle表输入条件参数设置
    batの磕磕碰碰
    bat调用kettle的job文件
    数组转换成字符串输出
    bat调用带参数存储过程
    读取属性文件
    剑指Offer——删除链表中重复的结点
    剑指Offer——链表中环的入口节点
    剑指Offer——两个链表的第一个公共节点
    剑指Offer——表示数值的字符串
  • 原文地址:https://www.cnblogs.com/wikioibai/p/4391362.html
Copyright © 2011-2022 走看看