建议加强数据
查看原帖
建议加强数据
1063855
xu_zhihao楼主2024/8/16 11:31

就算滑动窗口区间范围写错还能有90pts,如下

#include<bits/stdc++.h>
using namespace std;
int a[1000010];
int l[1000010];
int sum[1000010];
int main(){
	int n,m;
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
	}
	int k=min(n-1,m);
	int mn=1e9;
	deque<pair<int,int>>q; 
	for(int i=1;i<=n;i++){
		while(!q.empty() && a[i]>q.back().first){
			q.pop_back();
		}
		q.push_back({a[i],i});
		while(!q.empty() && i-q.front().second>=k){;
			q.pop_front();
		}
		if(i>=k){
			mn=min(q.front().first,mn);
		}
	}
	cout<<mn;
} 
2024/8/16 11:31
加载中...