View Code of Problem 3686

#include "stdio.h"
#include "string.h"
#include "ctype.h"
#include "math.h"
int a[1000000],b[1000000];
int main()
{
  int t,n,x,i;
  scanf("%d",&t);
  while(t--)
  {  
     memset(a,0,sizeof(a));
     scanf("%d %d",&n,&x);
     for(i=0;i<n;i++)
     {
     	scanf("%d",&a[i]);
     	b[a[i]]++;
     }
      
	 for(i=0;i<n;i++)
	 {
	 	if(x>a[i])
	 	{
	 		if(b[x-a[i]]!=0&&x!=(2*a[i]))
	 		{
	 			printf("YES\n");
	 			break;
	 		}
	 		else if(b[x-a[i]]>1)
	 		{
	 			printf("YES\n");
	 			break;
	 		}
	 	}
	 }
	 if(i==n)
	   printf("NO\n");
  }
    return 0;
}

Double click to view unformatted code.


Back to problem 3686