import std.algorithm;
import std.conv;
import std.range;
import std.stdio;
import std.string;

void main ()
{
	auto tests = readln.strip.to !(int);
	foreach (test; 0..tests)
	{
		auto n = readln.strip.to !(int);
		auto a = readln.splitter.map !(to !(int)).array;

		int [] d;
		int i = 0;
		while (i < n * 2)
		{
			int j = i;
			do
			{
				i += 1;
			}
			while (i < n * 2 && a[i] < a[j]);
			d ~= i - j;
		}

		auto f = new int [n * 2 + 1];
		f[] = int.max;
		f[0] = -1;
		foreach (int k, ref c; d)
		{
			for (int p = c; p <= n * 2; p++)
			{
				if (f[p] == int.max && f[p - c] < k)
				{
					f[p] = k;
				}
			}
		}
		writeln (f[n] < int.max ? "YES" : "NO");
	}
}
