B3667求大佬调!25pts
  • 板块灌水区
  • 楼主Cubexyyy001
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/8/5 17:20
  • 上次更新2024/8/5 18:28:25
查看原帖
B3667求大佬调!25pts
856326
Cubexyyy001楼主2024/8/5 17:20

题目

悬关qwq

代码:

#include<bits/stdc++.h>
using namespace std;
struct ac
{
	long long num,id;//num为数值,id为输入时的编号
}a[1000001];
int main()
{
	long long n,k,back=0,front=1,x;
	cin>>n>>k;
	for(int i=1;i<=n;i++)
	{
		cin>>x;
		a[++back].num=x;
		a[back].id=i;
		while(a[back].num>a[back-1].num&&back>front){
			back--;
			a[back].num=a[back+1].num;
			a[back].id=a[back+1].id;
		}//当大于前一位时弹出前一位
		if(a[front].id+k-1<a[back].id)front++;
		if(i>=k)
			cout<<min(k,back-front+1)<<endl;//从i=k开始,每一次输出结果(因为结果不可能大于k,所以在k和得出的答案中取最小值)
	}
	return 0;
}

四个测试点,对了第二个,另外三个不存在超时,全WA

QwQ

2024/8/5 17:20
加载中...