Submission

Status:

[PPxSSSSSSSSSSSS]

Subtask/Task Score:

{0/100}

Score: 0

User: navysrimuang

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

Language: cpp

Time: 0.354 second

Submitted On: 2026-03-14 21:33:49

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
unordered_map<ll,ll> mp;

int main(){
	cin.tie(0)->sync_with_stdio(0);
	ll sum = 0;
	ll ans = LLONG_MIN;
	int n;
	ll mx = LLONG_MIN;
	cin >> n;
	vector<ll> v(n);
	for(int i = 0;i<n;i++){
		cin >> v[i];	
		mx = max(mx,v[i]);
	}
	
	for(int i = 1;i<n;i++){
		ll x = v[i-1]; ll y = v[i];
		if(x < y){
			mp[x]++;
			mp[y]--;
		}else{
			mp[y]++;
			mp[x]--;
		}
	}
	
	for(int i = 1;i<=mx;i++){
		sum += mp[i];
		ans = max(ans,sum);
	}

	cout << ans << "\n";
	return 0;
}