Submission

Status:

[PPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: patty

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

Language: cpp

Time: 0.025 second

Submitted On: 2026-03-13 17:12:19

#include <bits/stdc++.h>
using namespace std;
int main() {
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	int n;
	cin >> n;
	vector<int> stock(n);
	for(int i=0;i<n;i++) cin >> stock[i];
	vector<pair<int,int>> sum;
	for(int i=0;i<n-1;i++) {
		sum.push_back({min(stock[i],stock[i+1]),1});
		sum.push_back({max(stock[i],stock[i+1]),-1});
	}
	sort(sum.begin(),sum.end());
	vector<int> ans(sum.size());
	int maxstock=sum[0].second;
	ans[0] = sum[0].second;
	for(int i=1;i<sum.size();i++) {
		ans[i] = ans[i-1] + sum[i].second;
		maxstock = max(maxstock,ans[i]);
	}
	cout << maxstock;
}