死亡之组

  • 建立【正向目标】——1号队伍所在的组至多一支队伍的实力不小于L,实力极差超过D
点击查看代码
#include <bits/stdc++.h>
using namespace std;
struct t1
{
	int a,id;
}t[100005];
bool cmp(t1 a,t1 b)
{
	return a.a<b.a;
}
int read1()
{
	char cc=getchar();
	while(!(cc>=48&&cc<=57))
	{
		if(cc=='-')
		{
			break;
		}
		cc=getchar();
	}
	bool f=false;
	int s=0;
	if(cc=='-')
	{
		f=true;
	}
	else
	{
		s=cc-48;
	}
	while(1)
	{
		cc=getchar();
		if(cc>=48&&cc<=57)
		{
			s=s*10+cc-48;
		}
		else
		{
			break;
		}
	}
	if(f==true)
	{
		s=-s;
	}
	return s;
}
int main()
{
	int T;
	cin>>T;
	while(T--)
	{
		int n,l,d;
		cin>>n>>l>>d;
		for(int i=1;i<=n;i++)
		{
			t[i].a=read1();
			t[i].id=i;
		}
		sort(t+1,t+n+1,cmp);
		int mid=n+1,id;
		for(int i=1;i<=n;i++)
		{
			if(t[i].a>=l&&mid==n+1)
			{
				mid=i;
			}
			if(t[i].id==1)
			{
				id=i;
			}
		}
		if(mid<=3)
		{
			puts("No");
			continue;
		}
		if(t[id].a>=l)
		{
			if(t[id].a-t[1].a>d)
			{
				puts("Yes");
			}
			else
			{
				puts("No");
			}
		}
		else
		{
			if(t[n].a-t[1].a>d)
			{
				puts("Yes");
			}
			else
			{
				puts("No");
			}
		}
	}
	return 0;
}
posted @ 2024-07-31 10:39  D06  阅读(14)  评论(0编辑  收藏  举报