#include<bits/stdc++.h> #define mp make_pair #define pb push_back #define fl first #define fr second usingnamespacestd; typedeflonglong LL; typedef pair<int, int> pii; constint N = 200000 + 10; int n, k, a[N], b[N]; LL tr[N]; voidAdd(int x, int a) { for (; x <= n * 2 + 1; x += x & -x) tr[x] += a; } LL Query(int x) { LL res = 0; for (; x > 0; x -= x & -x) res += tr[x]; return res; } intmain() { int T; scanf("%d", &T); while (T--) { scanf("%d%d", &n, &k); for (int i = 0; i <= n * 2 + 1; i++) tr[i] = 0; int num = 0; for (int i = 1; i <= n; i++) { scanf("%d", &a[i]); if (a[i] >= k) b[i] = 1; else b[i] = -1; if (a[i] == k) num++; } if (num == 0) { puts("no"); continue; } if (n == 1) { if (b[1] == 1) puts("yes"); elseputs("no"); continue; } LL res = 0, sum = 0; Add(n + 1, 1); for (int i = 1; i <= n; i++) { sum += b[i]; res += Query(sum + n); Add(sum + n + 1, 1); } for (int i = 1; i <= n; i++) if (b[i] == 1) res--; if (res > 0) puts("yes"); elseputs("no"); } return0; }