#include <bits/stdc++.h>

const int mod1 = 998244353, mod2 = 1e9 + 7;
const int N = 2e5 + 5;

void solve() {
	int n; std::cin >> n;
	std::vector<int> b(n);
	for (int i = 0; i < n; i++) {
		std::cin >> b[i];
	}	
	std::multiset<int> st;
	st.insert(b[0]);
	int ok = 1;
	for (int i = 1; i < n; i++) {
		if (b[i] > b[i - 1]) {
			auto pos = st.upper_bound(b[i - 1]);
			if (pos != st.end() && (*pos) < b[i]) {
				ok = 0; break;
			}
		} else if (b[i] < b[i - 1]) {
			auto pos = st.lower_bound(b[i - 1]);
			if (pos != st.begin() && (*(--pos)) > b[i]) {
				ok = 0; break;
			}
		} 
		st.insert(b[i]);
	}
	if (ok) {
		std::cout << "YES\n";
	} else {
		std::cout << "NO\n";
	}
}

 
int main() {
  std::ios::sync_with_stdio(false), std::cin.tie(0);
  int T = 1; std::cin >> T;
	while (T--) {
    solve();
  }
  return 0;
}