Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: MyYammGods
Problemset: ปริมาตรน้ำท่วม
Language: cpp
Time: 0.003 second
Submitted On: 2025-10-15 11:37:44
#include <iostream>
#include <vector>
using namespace std;
int main() {
int N;
cin >> N;
vector<int> height(N);
for (int i = 0; i < N; i++) {
cin >> height[i];
}
int total_water = 0;
for (int i = 0; i < N; i++) {
int max_left = 0;
int max_right = 0;
// ?Ҥ???٧?ش?ҧ???¢ͧ???˹? i
for (int j = 0; j <= i; j++) {
max_left = max(max_left, height[j]);
}
// ?Ҥ???٧?ش?ҧ??Ңͧ???˹? i
for (int j = i; j < N; j++) {
max_right = max(max_right, height[j]);
}
// ?ӹdz??ӷ??ѧ??㹵??˹? i
int water = min(max_left, max_right) - height[i];
if (water > 0) {
total_water += water;
}
}
cout << total_water;
return 0;
}