Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: angpangSK
Problemset: ปริมาตรน้ำท่วม
Language: c
Time: 0.003 second
Submitted On: 2025-09-24 21:29:19
#include <stdio.h>
#define N 10010
int arr[N];
int mxleft[N], mxright[N];
int max(int a, int b) {
return (a > b) ? a : b;
}
int main() {
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
scanf("%d", &arr[i]);
}
for (int i = 1; i <= n; i++) {
mxleft[i] = max(mxleft[i-1], arr[i]);
}
for (int i = n; i > 0; i--) {
mxright[i] = max(mxright[i+1], arr[i]);
}
int flood = 0;
for (int i = 1; i <= n; i++) {
int x = (mxleft[i] < mxright[i] ? mxleft[i] : mxright[i]) - arr[i];
if (x > 0) flood += x;
}
printf("%d\n", flood);
return 0;
}