Submission

Status:

[PPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: august

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

Language: cpp

Time: 0.026 second

Submitted On: 2026-03-18 20:46:10

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

#define int long long

int32_t main() {
    cin.tie(0)->sync_with_stdio(0);
    int n;
    cin>> n;

    int a[n];
    for (int i=0; i<n; i++) cin>> a[i];
    
    vector<pair<double,int>> sw;

    for (int i=0; i<n-1; i++) {
        int mn = min(a[i], a[i+1]);
        int mx = max(a[i], a[i+1]);

        sw.push_back({mn+0.1, 1});
        sw.push_back({mx-0.1, -1});
    }

    sort(sw.begin(), sw.end());

    int cnt=0, ans=0;
    for (auto &x : sw) {
        
        cnt+=x.second;
        //cout<< x.first<< ' '<< cnt<< '\n';
        ans = max(ans, cnt);
    }
    cout<< ans;
}