Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: Zailagend1

Problemset: ปริมาตรน้ำท่วม

Language: cpp

Time: 0.003 second

Submitted On: 2026-06-20 20:13:06

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

typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef vector<int> vi;
typedef vector<ll> vll;
typedef vector<vi> vvi;
typedef vector<vll> vvll;
typedef vector<pii> vpii;
typedef vector<string> vs;
typedef unordered_map<int, int> umii;
typedef unordered_map<string, int> umsi;
typedef unordered_map<char, int> umci;
typedef unordered_map<ll, ll> umll;
typedef unordered_set<int> usi;

#define pb push_back
#define mp make_pair
#define F first
#define S second
#define all(v) (v).begin(), (v).end()
#define rall(v) (v).rbegin(), (v).rend()
#define sz(v) (int)(v).size()
#define il(n) int i = 0; i < (n); i++
#define jl(n) int j = 0; j < (n); j++
#define kl(n) int k = 0; k < (n); k++

const int MOD = 1e9 + 7;
const int INF = 1e9;
const ll LINF = 1e18;

template<typename T> void _dbg(T t) { cerr << t; }
template<typename T, typename... Args> void _dbg(T t, Args... args) { cerr << t << ", "; _dbg(args...); }
#ifdef LOCAL
#define debug(...) do { cerr << "[" << #__VA_ARGS__ << "] = ["; _dbg(__VA_ARGS__); cerr << "]" << endl; } while(0)
#else
#define debug(...)
#endif

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n = 0;
    bool enable = false;
    bool enable2 = false;
    int buffer = 0;
    int buffer2 = 0;
    cin >> n;
    int result = 0;
    vi a(n);
    vi left(n);
    vi right(n);
    int max = a[0];
    int max2 = a[n-1];
    for (il(n)) {cin >> a[i];}

    for(int i = 0;i<n;i++){
      if(a[i] >= max){
        max = a[i];
      }
      left[i] = max;
    }
    for(int i = n-1;i>=0;i--){
      if(a[i] >= max2){
        max2 = a[i];
      }
      right[i] = max2;
    }
    for(il(n)){
      buffer += (min(left[i],right[i])-a[i]);
    }
      
  
    cout << buffer;
    return 0;
}