Submission

Status:

[PPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: krittaphot

Problemset: จุดตัดบนกราฟ

Language: cpp

Time: 0.040 second

Submitted On: 2026-03-05 20:09:52

#include <bits/stdc++.h>
using namespace std;


int main(){
    int n;
    cin >> n;
    vector <int> val(n);
    vector <pair<long long,int>> arr;

    for (int i = 0 ; i < n ; i++){
        cin >> val[i];
    }   
    for (int i = 0 ; i < n - 1; i++){
        long long high = max(val[i] , val[i + 1]);
        long long low = min(val[i] , val[i + 1]);
        
        arr.push_back(make_pair(low , 1));
        arr.push_back(make_pair(high , -1));
    }
    sort(arr.begin() , arr.end());
    long long mx = -1;
    long long sum = 0;
    for (int i = 0 ; i < arr.size() ; i++){
        sum += arr[i].second;
        mx = max(mx , sum);
    }
    cout << mx << "\n";

}