#include <bits/stdc++.h>
using namespace std;
const int PRIME = 1e9 + 7;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  int t;
  cin >> t;
  for (int test = 0; test < t; test++) {
    int n;
    cin >> n;
    vector<int> data(2 * n);
    for (int i = 0; i < 2 * n; i++) {
      cin >> data[i];
    }
    vector<int> chunks;
    vector<bool> seen(2 * n + 1, false);
    int rPoint = 2 * n;
    int looking = 2 * n;
    for (int i = 2 * n - 1; i >= 0; i--) {
      seen[data[i]] = true;
      if (data[i] == looking) {
        chunks.push_back(rPoint - i);
        rPoint = i;
        while (seen[looking] == true) {
          looking--;
        }
      }
    }
    vector<vector<bool>> dp((int)chunks.size(), vector<bool>(n + 1, false));
    dp[0][0] = true;
    dp[0][chunks[0]] = true;
    for (int i = 1; i < (int)chunks.size(); i++) {
      for (int j = 1; j <= n; j++) {
        dp[i][j] = dp[i - 1][j];
        if (j >= chunks[i]) {
          dp[i][j] = dp[i][j] || dp[i - 1][j - chunks[i]];
        }
      }
    }
    bool isGood = false;
    for (int i = 0; i < (int)chunks.size(); i++) {
      if (dp[i][n]) {
        isGood = true;
        break;
      }
    }
    if (isGood) {
      cout << "YES\n";
    } else {
      cout << "NO\n";
    }
  }
}
