#include #include using namespace std; int const MAXN=100010; int t, n, a[MAXN]; pair ans[MAXN]; vector > v; int bin_search(int x) { int l=0, r=v.size()-2; while(l<=r) { int mid=(l+r)/2; if(v[mid].first <= x) l=mid+1; else r=mid-1; } return l; } void read() { int maxn=0; cin>>t; for(int l=1; l<=t; l++) { cin>>n; cin>>a[1]; v.clear(); v.push_back({0, false}); v.push_back({a[1], true}); for(int i=2; i<=n; i++) { cin>>a[i]; int sz=v.size(); if(v[sz-1].first < a[i]) { if(v[sz-1].second == false) v.push_back({a[i], true}); else v[sz-1].first = a[i]; } else if(v[sz-1].first == a[i] && v[sz-1].second == true) { v.push_back({a[i], false}); } else if(v[sz-1].first > a[i]) { /*int x=bin_search(a[i]);*/ for(int j=sz-2; j>=0; j--) { if(v[j].first < a[i] && v[j].second == false) { v[j+1].first = a[i]; v[j+1].second = true; break; } else if(v[j].first == a[i] && v[j].second == true) { v[j+1].first = a[i]; v[j+1].second = false; break; } } } } cout<<(v.size()-1)/2*2<