#2,8,9,10RE,#6TLE求调
查看原帖
#2,8,9,10RE,#6TLE求调
551088
FincheuwYggdrasil楼主2022/11/7 22:01

RT

#include<bits/stdc++.h>
using namespace std;
deque<int> a;
int n,k,l;
int a0[100010],min0[100010],max0[100010];
int main()
{
	scanf("%d%d",&n,&k);
	fill(max0,max0+n+1,INT_MIN);
	fill(min0,min0+n+1,INT_MAX);
	for(int i = 1;i <= n;i++)
		scanf("%d",&a0[i]);
	for(int i = 1;i <= k;i++)
	{
		a.push_back(a0[i]);
		min0[1] = min(min0[1],a0[i]);
		max0[1] = max(max0[1],a0[i]);
	}
	l = n - k + 1;
	for(int i = 2;i <= l;i++)
	{
		int now = a0[k + i - 1];
		a.pop_front();
		a.push_back(now);
		int minn = INT_MAX,maxx = INT_MIN;
		for(int i = 0;i < a.size();i++)
		{
			minn = min(a.front(),minn);
			maxx = max(a.front(),maxx);
			a.push_back(a.front());
			a.pop_front();
		}
		max0[i] = maxx;
		min0[i] = minn;
	}
	for(int i = 1;i <= l;i++)
	{
		printf("%d ",min0[i]);
	}
	printf("\n");
	for(int i = 1;i <= l;i++)
	{
		printf("%d ",max0[i]);
	}
 	return 0;
}

2022/11/7 22:01
加载中...