Submission

Status:
PPPPPPPPPP

Score: 100

User: Ecir

Problemset: Fool's Compensation

Language: cpp

Time: 0.003 second

Submitted On: 2025-03-13 23:19:06

#include <bits/stdc++.h>
using namespace std;
using ll=long long int;
#define twod array<ll,2>
int arr[10009];
ll dp[10009];
bool vis[10009][10009];
int main(){
	ios::sync_with_stdio(0);cin.tie(0);
	int n;cin >> n;
	for(int i=1;i<=n;i++) {
		cin >> arr[i];
		dp[i]=1000;
	}
	for(int i=1;i<=n;i++){
		if(arr[i]<arr[i+1]) dp[i+1]=max(dp[i+1],dp[i]+1000) ;
		else if(arr[i]==arr[i+1]) dp[i+1]=max(dp[i+1],dp[i]);
	}
	for(int i=n;i>=1;i--){
		if(arr[i]<arr[i-1]) dp[i-1]=max(dp[i-1],dp[i]+1000);
		else if(arr[i]==arr[i-1]) dp[i-1]=max(dp[i-1],dp[i]);
	}
//	for(int i=1;i<=n;i++) cout << dp[i] << " ";
	ll ans=0;
	for(int i=1;i<=n;i++) ans+=dp[i];
	cout << ans;
	return 0;
}
/*10 3 3 3 3 3 3 3 2 1 0*/