Submission
Status:
PPPPPP--P-
Score: 70
User: qwerty
Problemset: Fool's Compensation
Language: cpp
Time: 0.004 second
Submitted On: 2025-03-16 21:05:50
#include<bits/stdc++.h>
using namespace std;
// 12 1476 2903 2817 2342 1797 2925 1322 1582 1471 2706 4506 1000
// 1000 4000 3000 2000 1000 2000 1000 2000 1000 2000 3000 1000
// 1000 2000 1000 1000 1000 2000 1000 2000 1000 2000 3000 1000
// 1000 4000 3000 2000 1000 2000 1000 2000 1000 2000 3000 1000
int main() {
int n;
cin >> n;
vector<int> sell(n);
for (int i = 0 ; i < n ; i++) {
cin >> sell[i];
}
// 12 1476 2903 2817 2342 1797 2925 1322 1582 1471 2706 4506 1000
// 1000 4000 3000 2000 1000 2000 1000 2000 1000 2000 3000 1000
// 1000 2000 1000 1000 1000 2000 1000 2000 1000 2000 3000 1000
// 1000 4000 3000 2000 1000 2000 1000 2000 1000 2000 3000 1000
vector<int> mon(n, 1000);
for (int i = 1 ; i < n ; i++) {
if (sell[i]>sell[i-1]) mon[i]=mon[i-1]+1000;
else if (sell[i]==sell[i-1]) mon[i]=mon[i-1];
}
for (int i = n-2 ; i >= 0 ; i--) {
if (sell[i]>sell[i+1] && mon[i]<=mon[i+1]) mon[i]=mon[i+1]+1000;
else if (sell[i]==sell[i+1]) mon[i]=mon[i+1];
}
int ans = 0;
for (auto i : mon) {
// cout << i << " ";
ans+=i;
}
cout << ans;
}
// 12 1476 2903 2817 2342 1797 2925 1322 1582 1471 2706 4506 1000
// ... 1000 2000 1000 2000 -- 1000 2000 1000