求助RE
  • 板块P2032 扫描
  • 楼主whisp1r
  • 当前回复2
  • 已保存回复2
  • 发布时间2021/11/11 19:55
  • 上次更新2023/11/4 00:52:10
查看原帖
求助RE
542793
whisp1r楼主2021/11/11 19:55
#include<stdio.h> 
#include<iostream> 
#include<queue> 
using namespace std;

int n,k,r; 
struct node{
	int id;
	int num;
};
deque<node>q;

int main() { 
	scanf("%d%d",&n,&k);
	for(int i=1;i<=n;i++){ 
		scanf("%d",&r); 
		node tmp;
		tmp.id=i;tmp.num=r;
		if(r<=q.back().num){
			q.push_back(tmp);
		}
		else{
			while(r>=q.back().num&&!q.empty()){
				q.pop_back();
			} 
			q.push_back(tmp);
		}
		while(q.front().id<=i-k){
			q.pop_front();
		}
		if(i>=k){
			cout<<q.front().num<<endl;
		}
	}
	return 0;
}
2021/11/11 19:55
加载中...