ZZULIOJ 2834: 小凯的书架

2834: 小凯的书架icon-default.png?t=M3K6http://acm.zzuli.edu.cn/problem.php?id=2834注意k大于n的情况。

此题数据较大,注意输出输入的时候用scanf,printf。

#include
#include
#include
using namespace std;
typedef long long LL;
LL a[300005];
int main()
{
	int t;
	cin>>t;
	while(t--)
	{
		int n,k;
		cin>>n>>k;
		for(int i=1; i<=n; i++)
			scanf("%d",&a[i]);
		if(k>=n)
		{
			for(int i=1;i<=n;i++) printf("-1\n");
			continue;
		}
		for(int i=1;i<=k;i++) printf("-1\n");
		for(int i=k+1;i<=n;i++)
		{
		
			int p=0;
			for(int j=i-1; j>=1; j--)
			{
				if(a[j]>a[i]) p++;
				if(p==k)
				{
					printf("%lld\n",a[j]);
					break;
				}
			}
			if(p

你可能感兴趣的:(#,基础算法c,算法,c++)