Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: chs_14
Problemset: ปริมาตรน้ำท่วม
Language: cpp
Time: 0.002 second
Submitted On: 2026-08-18 21:58:18
#include <bits/stdc++.h>
using namespace std;
int main() {
cin.tie(0)->sync_with_stdio(false);
int n, ans=0;
cin >> n;
vector<int> area(n, 0), left(n, 0), right(n, 0);
for (int i = 0; i < n; i++)
{
cin >> area[i];
}
left[0] = area[0];
right[n-1] = area[n-1];
for (int i = 1; i < n; i++)
{
left[i] = max(left[i-1], area[i]);
}
for (int i = n-2; i>=0; i--)
{
right[i] = max(right[i+1], area[i]);
}
for (int i = 0; i < n; i++)
{
ans+=min(left[i], right[i])-area[i];
}
cout << ans;
return 0;
}