#include <bits/stdc++.h>
using namespace std;
int cl(int n, int m) {
  if (n % m)
    return n / m + 1;
  else
    return n / m;
}
int pw(int a, int b, int M) {
  a %= M;
  int r = 1;
  while (b > 0) {
    if (b & 1) r = r * a % M;
    a = a * a % M;
    b >>= 1;
  }
  return r;
}
const int N = 1e6 + 5;
int a[N];
bool dp[2004][2004];
signed main() {
  int TT;
  cin >> TT;
  while (TT--) {
    int n;
    cin >> n;
    for (int i = 1; i <= 2 * n; i++) cin >> a[i];
    memset(dp, 0, sizeof(dp));
    int sz = 2 * n;
    vector<int> v;
    int turn = 0, A = 0, B = 0;
    v.push_back(1);
    while (sz != 0) {
      int mx = 0, id = 0;
      for (int i = 1; i <= sz; i++) {
        mx = max(mx, a[i]);
        if (mx == a[i]) id = i;
      }
      int tt = sz - id + 1;
      if (turn & 1) {
        v.push_back(tt);
        sz -= tt;
      } else {
        v.push_back(tt);
        sz -= tt;
      }
      turn = turn ^ 1;
    }
    dp[0][0] = 1;
    sort(v.begin() + 1, v.end());
    for (int i = 1; i < v.size(); i++) {
      for (int j = 1; j <= n; j++) {
        dp[i][j] = dp[i - 1][j];
        if (j - v[i] >= 0) dp[i][j] = dp[i][j] | dp[i - 1][j - v[i]];
      }
    }
    if (dp[v.size() - 1][n]) {
      cout << "YES\n";
    } else
      cout << "NO\n";
    v.clear();
  }
}
