[编程题] 发奖金

狐进行了一次黑客马拉松大赛,全公司一共分为了N个组,每组一个房间排成一排开始比赛,比赛结束后没有公布成绩,但是每个组能够看到自己相邻的两个组里比自己成绩低的组的成绩,比赛结束之后要发奖金,以1w为单位,每个组都至少会发1w的奖金,另外,如果一个组发现自己的奖金没有高于比自己成绩低的组发的奖金,就会不满意,作为比赛的组织方,根据成绩计算出至少需要发多少奖金才能让所有的组满意。
输入描述:
每组数据先输入N,然后N行输入N个正整数,每个数表示每个组的比赛成绩。
输出描述:
输出至少需要多少w的奖金
输入例子:
10
20
32
12
32
45
11
21
31
41
33
输出例子:
20

#include<iostream>
#include<vector>
using namespace std;
int main()
    {
    int n;
    while(cin>>n)
        {
        vector<int>a(n,0);
        for(int i=0;i<n;i++)
            cin>>a[i];
        vector<int>b(n,1);
        for(int i=1;i<n;i++)//从前往后
            if(a[i]>a[i-1])
                b[i]=b[i-1]+1;
        for(int i=n-2;i>=0;i--)//从后往前
            if(a[i]>a[i+1]&&b[i]<b[i+1]+1)
                b[i]=b[i+1]+1;
        long sum=0;
        for(int i=0;i<n;i++)
            sum+=b[i];
         cout<<sum<<endl;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔...
    叶总韩阅读 5,229评论 0 41
  • 标签(空格分隔): 算法 C++ 笔试 第三题:描述小王最近在开发一种新的游戏引擎,但是最近遇到了性能瓶颈。于是他...
    认真学计算机阅读 2,058评论 0 8
  • 我不能不承认,现在的我完完全全成了一个手机依赖者。一天24小时不离手机,哪怕上个厕所都要玩个斗地主。 你们曾经有过...
    罗罗哒罗阅读 239评论 2 0
  • 我轻轻闭上眼睛 幻想到那夜的月光 照在一架古旧的钢琴上 盲眼的姑娘和她的哥哥 在深夜讨论着贝多芬 也在谈论如何像他...
    鹿宥宥阅读 267评论 2 10
  • 初春畅游入迷途,天晚难归,偏爱流连处。怜花惜景浅度步,望断深山不知路。 天沉微晚风徐徐,风高树盛,但喜从中绿...
    Real_执念阅读 205评论 0 2

友情链接更多精彩内容