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;
}