Submission

Status:
PPPPPPPPPP

Score: 100

User: krittaphot

Problemset: Fool's Compensation

Language: cpp

Time: 0.006 second

Submitted On: 2025-03-16 00:13:03

#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    vector<int> sale(n);
    vector<int> salary(n, 1000);
    
    for (int i = 0; i < n; i++) {
        cin >> sale[i];
    }
    
    // Left-to-right pass
    for (int i = 1; i < n; i++) {
        if (sale[i] > sale[i - 1] && salary[i] <= salary[i - 1]) {
            salary[i] = salary[i - 1] + 1000;
        }
        else if(sale[i] == sale[i-1]){
        	salary[i] = salary[i-1];
		}
    }
    

    for (int i = n - 2; i >= 0; i--) {
        if (sale[i] > sale[i + 1] && salary[i] <= salary[i + 1]) {
            salary[i] = salary[i + 1] + 1000;
        }
        else if(sale[i] == sale[i+1]){
        	salary[i] = salary[i+1];
		}
    }
    
    long long total = 0;
    for(int i = 0;i<n;i++){
    	total += salary[i];
	}
    cout << total;

}