#include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")
const long long maxn = 4005, maxk = 1e5 + 2, mod = 1e9 + 7;
long long a[maxn];
vector<long long> v;
bool mrk[maxn];
int32_t main() {
  long long t;
  cin >> t;
  while (t--) {
    long long n, mx = 0, lst = 0;
    cin >> n >> mx;
    for (long long i = 1; i < 2 * n; i++) {
      cin >> a[i];
      if (a[i] > mx) {
        mx = a[i];
        v.push_back(i - lst);
        lst = i;
      }
    }
    v.push_back(2 * n - lst);
    for (long long i = 1; i <= n; i++) mrk[i] = false;
    mrk[0] = true;
    for (long long i = 0; i < (long long)(v).size(); i++) {
      for (long long j = n - v[i]; j >= 0; j--) mrk[j + v[i]] |= mrk[j];
    }
    if (mrk[n])
      cout << "YES" << '\n';
    else
      cout << "NO" << '\n';
    v.clear();
  }
}
