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