Orac and Medians CodeForces - 1350D 思维

#include<bits/stdc++.h>
#define ll long long
#define pii pair<int,int>
using namespace std;

const int N = 1e5+10;
int a[N],n,k;
void solve()
{
	cin>>n>>k;
	for(int i=1; i<=n; i++)
		cin>>a[i];
	int f2=0;
	int f1=0;
	for(int i=1; i<=n; i++)
	{
		if(a[i]==k)
			f1=1;
		//只要存在两个相邻的大于等于k的 就可以一直扩展 
		//细节 
		if(i<=n-1 && a[i]>=k && a[i+1]>=k )
			f2=1;
		//或者存在两个 左右是大于等于的k  那么中间的也就可以变成>=k,然后可以延申了 
		//细节 
		if(i<n-1 && a[i]>=k && a[i+2]>=k)
			f2=1;
	}
	//				细节 
	if((f1&&f2) || (n==1 && a[1]==k))
		cout<<"yes"<<endl;
	else
		cout<<"no"<<endl;
}
int main()
{
	int t;
	cin>>t;
	while(t--)
		solve();
	return 0;
}
posted @ 2020-05-13 14:14  晴屿  阅读(180)  评论(0编辑  收藏  举报