zoukankan      html  css  js  c++  java
  • BZOJ 1345: [Baltic2007]序列问题Sequence

    1345: [Baltic2007]序列问题Sequence

    Time Limit: 5 Sec  Memory Limit: 162 MB
    Submit: 1180  Solved: 633
    [Submit][Status][Discuss]

    Description

    对于一个给定的序列a1,…,an,我们对它进行一个操作reduce(i),该操作将数列中的元素ai和ai+1用一个元素max
    (ai,ai+1)替代,这样得到一个比原来序列短的新序列。这一操作的代价是max(ai,ai+1)。进行n-1次该操作后,
    可以得到一个长度为1的序列。我们的任务是计算代价最小的reduce操作步骤,将给定的序列变成长度为1的序列。

    Input

    第一行为一个整数n( 1 <= n <= 1,000,000 ),表示给定序列的长度。
    接下来的n行,每行一个整数ai(0 <=ai<= 1, 000, 000, 000),为序列中的元素。

    Output

    只有一行,为一个整数,即将序列变成一个元素的最小代价。

    Sample Input

    3
    1
    2
    3

    Sample Output

    5

    HINT

    Source

    题解:

      直接看代码吧,没想到这样就a了.

    代码:

    #include <cstdio>
    #include <iostream>
    #include <algorithm>
    #include <cstring>
    #include <cmath>
    #include <iostream>
    #define MAXN 1000010
    #define ll long long
    using namespace std;
    int n;
    int a[MAXN];
    int main()
    {
        scanf("%d",&n);
        for(int i=1;i<=n;i++) scanf("%d",&a[i]);
        ll ans=0;
        for(int i=1;i<n;i++) ans+=max(a[i],a[i+1]);
        printf("%lld",ans);
        return 0;
    }
    [Submit][Status][Discuss]
  • 相关阅读:
    cocos2dx 3.0 飞机大战
    cocos2dx 3.0 触摸机制
    cocos2d-x 3.0 rc0 + flappybird 学习心得
    cocos2dx 3.0 +VS2012 环境搭建
    cocos2dx 内存管理(3)---CCPoolManager浅析
    cocos2dx 内存管理机制(2)
    Cocos2dx 入门小游戏实例
    myBaits入门
    Java8:函数式编程、Stream
    Java基础巩固
  • 原文地址:https://www.cnblogs.com/renjianshige/p/9697068.html
Copyright © 2011-2022 走看看