Submission
Status:
[PPPPP-SSSSSSSSS]
Subtask/Task Score:
{0/100}
Score: 0
User: Zonezonee
Problemset: จุดตัดบนกราฟ
Language: cpp
Time: 0.002 second
Submitted On: 2026-01-16 19:17:54
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
int sweep[N], a[N];
vector<int> t;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
int n;
cin >> n;
t.resize(n);
for(int i = 1; i <= n; ++i) cin >> a[i], t[i-1] = a[i];
sort(t.begin(), t.end());
t.erase(unique(t.begin(), t.end()), t.end());
for(int i = 1; i <= n; ++i){
a[i] = lower_bound(t.begin(), t.end(), a[i])-t.begin() + 1;
}
for(int i = 1; i < n; ++i){
int l = min(a[i], a[i+1]), r = max(a[i], a[i+1]);
sweep[l]++;
sweep[r+1]--;
}
int ans = 0;
for(int i = 1; i <= n; ++i) ans = max(ans, sweep[i]);
cout << ans << '\n';
}