#include <bits/stdc++.h>
using namespace std;
long long int mul(long long int x, long long int y) {
  long long int ans = 1;
  while (y > 0) {
    if (y & 1) ans = (ans * x) % 1000000007;
    y /= 2;
    x = (x * x) % 1000000007;
  }
  return ans;
};
long long int a[4005], dp[4005][4005];
int main() {
  long long int t;
  scanf("%lld", &t);
  memset(dp, 0, sizeof dp);
  dp[0][0] = 1;
  while (t--) {
    long long int n, i, j;
    scanf("%lld", &n);
    set<pair<long long int, long long int> > second;
    for (i = 1; i <= 2 * n; i++) {
      scanf("%lld", &a[i]);
      second.insert(make_pair(a[i], i));
    }
    vector<long long int> vv;
    vv.push_back(-1);
    pair<long long int, long long int> top;
    long long int last, in, size;
    while (!second.empty()) {
      top = *second.rbegin();
      in = top.second;
      last = second.size();
      for (i = last; i >= in; i--) second.erase(make_pair(a[i], i));
      size = last - in + 1;
      vv.push_back(size);
    }
    size = vv.size();
    for (i = 1; i < vv.size(); i++) {
      for (j = 0; j <= 2 * n; j++) dp[i][j] = dp[i - 1][j];
      for (j = 0; j <= 2 * n; j++)
        if (dp[i - 1][j]) dp[i][j + vv[i]] = 1;
    }
    if (dp[vv.size() - 1][n])
      cout << "YES\n";
    else
      cout << "NO\n";
  }
  return 0;
}
