#include <bits/stdc++.h>
using namespace std;
int dx[4] = {1, 0, -1, 0};
int dy[4] = {0, 1, 0, -1};
bool DP[2002][2002];
bool isSorted(vector<long long int>& A) {
  for (int i = 1; i < A.size(); i++) {
    if (A[i] < A[i - 1]) return false;
  }
  return true;
}
bool isPossibleN(vector<long long int>& A, long long int N) {
  for (int i = 0; i <= A.size(); i++) {
    for (int j = 0; j <= N; j++) {
      DP[i][j] = false;
    }
  }
  for (int i = 1; i < A.size(); i++) {
    if (A[i] <= N) {
      DP[i][A[i]] = true;
    }
    for (int j = 0; j <= N; j++) {
      if (DP[i - 1][j] == true) DP[i][j] = true;
      if ((j - A[i] >= 0) && DP[i - 1][j - A[i]] == true) DP[i][j] = true;
    }
  }
  return DP[A.size() - 1][N];
}
int main() {
  long long int i, j, k, l, N, K;
  long long int t;
  cin >> t;
  while (t--) {
    cin >> N;
    long long int n = 2 * N;
    vector<long long int> A(n);
    for (i = 0; i < n; i++) {
      cin >> A[i];
    }
    vector<long long int> len, val;
    i = 0;
    while (i < n) {
      long long int cnt = 1;
      j = i + 1;
      while ((j < n) && (A[j] < A[i])) {
        cnt++;
        j++;
      }
      len.push_back(cnt);
      val.push_back(A[i]);
      i = j;
    }
    if (isSorted(val) && isPossibleN(len, N)) {
      cout << "YES\n";
    } else {
      cout << "NO\n";
    }
  }
  return 0;
}
