#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; }