Submission
Status:
----------
Score: 0
User: Angonnyyy
Problemset: Fool's Compensation
Language: cpp
Time: 0.003 second
Submitted On: 2025-03-17 22:28:26
#include<bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(0);cin.tie(0);
int n;
long long int total=0;
cin>>n;
vector<int>salary(n,1),score(n);
for(int i = 0;i<n;i++){
cin >> score[i];
}
for(int i = 0;i<n-1;i++){
if(score[i]<score[i+1]){
salary[i+1]=salary[i]+1;
}
else if(score[i]==score[i+1]){
salary[i+1]=salary[i];
}
}
for(int i = n-1;i>0;i--){
if(score[i]<score[i-1] && salary[i]>=salary[i-1]){//i-1 have more
salary[i-1]=salary[i]+1;
}
else if(score[i]==score[i-1]){//compare pick most
salary[i-1]=max(salary[i-1],salary[i]);
salary[i]=salary[i-1];
total+=salary[i];
}
}
total*=1000;
cout<<total;
}