#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
long long fact2(long N,long K){
  long long res=1;
  for(long i=K+1;i<=N;i++){
    res*=i;
  }
  return res;
}
long long fact(long N){
  long long res=1;
  for(long i=1;i<=N;i++){
    res*=i;
  }
  return res;
}
long long nChoosek(long N,long K){
  if(N<K){
    return 0;
  }
  long nMinusK = N-K;
  if(nMinusK < K){
    return fact2(N,K)/fact(nMinusK);
  }
  else{
    return fact2(N,nMinusK)/fact(K);
  }
}
long long findResult(long N,long K){
    if(N<K) return 0;
    long newN = N-K+1;
    if((newN) < K){
        return 0;
    }
    return nChoosek(newN,K);
    
}

int main() {
    int T;
    cin>>T;
    for(int i=0;i<T;i++){
        long N,K;
        cin>>N>>K;
        cout<<findResult(N,K)<<endl;
    }
    return 0;
}