#include <bits/stdc++.h>
using namespace std;
#ifdef ONLINE_JUDGE
    #define cerr if(false)cerr
#else
    #define cerr if(true)cerr
#endif
#define inputarr(a,n) for(ll i=0;i<n;i++) cin>>a[i];
#define prllarr(a,n) for(ll i=0;i<n;i++) cerr<<a[i]<<" "; cerr<<endl;
#define pb push_back
#define ll long long
#define mod 1000000007
#define foi ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(0);
#define in(n) scanf("%lld",&n);
#define in2(x,y) scanf("%lld %lld",&(x),&(y));
#define in3(x,y,z) scanf("%lld %lld %lld",&(x),&(y),&(z));
#define in4(x,y,z,m) scanf("%lld %lld %lld %lld",&(x),&(y),&(z),&(m));
#define out(n) printf("%lld\n",n);
#define out2(x,y) printf("%lld %lld\n",x,y);
#define test(t)  ll t; in(t);while(t--)
#define set(arr,n,s) for(ll i=0;i<n;i++){arr[i]=s;}
#define fr(i,s,e) for(ll i=s;i<e;i++)
#define frr(i,s,e) for(ll i=e-1;i>=s;i--)
#define vi vector<ll>
#define see2(x,y) cerr<<x<<" "<<y<<endl;
#define see(x) cerr<<x<<endl;
#define see3(x,y,z) cerr<<x<<" "<<y<<" "<<z<<endl;
#define see4(x,y,z,m) cout<<x<<" "<<y<<" "<<z<<" "<<m<<endl;
#define invec(a,n) fr(i,0,n){ll x;in(x) a.pb(x);}
#define vii vector<pair<ll,ll> >
#define all(a) a.begin(),a.end()
#define pii pair<ll,ll>

ll power(ll x,ll y,ll p){ll res=1;x=x%p;while(y>0){if(y&1){res=(res*x)%p;} y=y>>1;x=(x*x)%p;}return res;}
ll modInverse(ll a,ll p){return power(a,p-2,p);}//used with feemat little//only for prime
// void gcd(ll a, ll b, ll& d, ll& u, ll& v) {
//     if (b == 0) {
//         d = a;
//         u = 1;
//         v = 0;
//     } else {
//         gcd(b, a % b, d, v, u);
//         // a u + b v = b u' + (a - (a/b) * b) v'
//         // = a v' + b (u' - (a/b) v').
//         v -= a / b * u;
//     }
// }
// ll Inverse(ll a, ll m) {
//     a %= m;
//     if (a < 0) a += m;
//     ll d, u, v;
//     gcd(a, m, d, u, v);
//     assert(d == 1);
//     u %= m;
//     if (u < 0) u += m;
//     return u;
// } 
template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return true; } return false; }
template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return true; } return false; }
ll gcd(ll x,ll y){if(x==0 || y==0){return max(y,x);}return gcd(y%x,x);}
// ll gcdExtended(ll a,ll b,ll &x,ll &y){if(a==0){x=0;y=1;return b;}ll x1,y1;ll gcd = gcdExtended(b%a,a,x1,y1);x=y1-(b/a)*x1;y=x1;return gcd;}//o(log(b))
// ;


int main(){
    test(t){
        ll n;
        in(n)
        vi a;
        invec(a,n)
        unordered_map<ll,ll>mapa;
        for(auto p:a)mapa[p]++;
        ll ans=1;
        ll cnt=0;
        for(ll i=2*n;i>=1;i--){
            if(mapa[i]){
                if(cnt){
                    ans++;
                    cnt--;
                }
            }
            else{
                cnt++;
            }
        }
        cnt=0;
        for(ll i=1;i<=2*n;i++){
            if(mapa[i]){
                if(!cnt)ans--;
                if(cnt){
                    cnt--;
                }
            }
            else cnt++;
        }
        cout<<ans<<endl;

    }


}


 
 