狐進行了一次黑客馬拉松大賽魏滚,全公司一共分為了N個組扫倡,每組一個房間排成一排開始比賽,比賽結(jié)束后沒有公布成績藤巢,但是每個組能夠看到自己相鄰的兩個組里比自己成績低的組的成績巡揍,比賽結(jié)束之后要發(fā)獎金,以1w為單位菌瘪,每個組都至少會發(fā)1w的獎金,另外阱当,如果一個組發(fā)現(xiàn)自己的獎金沒有高于比自己成績低的組發(fā)的獎金俏扩,就會不滿意,作為比賽的組織方弊添,根據(jù)成績計算出至少需要發(fā)多少獎金才能讓所有的組滿意录淡。
輸入描述:
每組數(shù)據(jù)先輸入N,然后N行輸入N個正整數(shù)油坝,每個數(shù)表示每個組的比賽成績嫉戚。
輸出描述:
輸出至少需要多少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;
}
}