Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: TonnamSora

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

Language: cpp

Time: 0.003 second

Submitted On: 2025-10-08 12:40:56

#include <iostream>
using namespace std;

int main(){
    int N;
    cin >> N;
    int a[N];
    int max = -1;
    for(int i = 0; i < N; i++){
        cin >> a[i];
    }
    for(int i = 0; i < N; i++){
        if(a[i] > max){
            max = a[i];
        }
    }
    int v[N] = {0};
    int sum = 0;
    int add = 0;
    for(int i = 0; i <= max; i++){
        for(int j = 0; j < N; j++){
            if(a[j] < i){
                v[j] = 1;
            }
            else if(a[j] >= i){
                v[j] = 0;
            }
            //cout << v[j] << " ";
        }
        //cout << "\n";
        for(int j = 0; j < N; j++){
            if(v[j] == 0){
                sum += add;
                add = 0;
            }
            else if(v[j] == 1){
                for(int k = 0; k <= j; k++){
                    if(v[j - k] == 0){
                        add++;
                        break;
                    }
                }
            }
        }
        add = 0;
    }
    cout << sum;
}