#include<stdio.h> #include<stdlib.h> int compare(const void *a,const void *b){ return *(int *)a-*(int *)b; } int main(){ int t,n,x,i,j; scanf("%d",&t); while(t--){ scanf("%d %d",&n,&x); int a[n],tag=0; for(i=0;i<n;i++) scanf("%d",&a[i]); qsort(a,n,sizeof(int),compare); i=0,j=n-1; while(i<j){ if(a[i]+a[j]>x) j--; else if(a[i]+a[j]<x) i++; else{ tag=1; printf("YES\n"); break; } } if(tag==0) printf("NO\n"); } } |
Double click to view unformatted code.