#include <iostream>
using namespace std;
unsigned Dwumian(unsigned n, unsigned k)
{
unsigned nLicznik = 1, nMianownik = 1;
if(k > (n - k))
{
for(unsigned i = (k+1); i <= n; i++)
{
nLicznik *= i;
}
for(unsigned i = 1; i <= (n - k); i++)
{
nMianownik *= i;
}
}
else
{
for(unsigned i = ((n - k)+1); i <= n; i++)
{
nLicznik *= i;
}
for(unsigned i = 1; i <= k; i++)
{
nMianownik *= i;
}
}
return nLicznik / nMianownik;
}
int main()
{
unsigned nIle, n, k;
cin >> nIle;
for(unsigned i = 0; i < nIle; i++)
{
cin >> n >> k;
cout << Dwumian(n, k) << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnVuc2lnbmVkIER3dW1pYW4odW5zaWduZWQgbiwgdW5zaWduZWQgaykKewogICAgdW5zaWduZWQgbkxpY3puaWsgPSAxLCBuTWlhbm93bmlrID0gMTsKCiAgICBpZihrID4gKG4gLSBrKSkKICAgIHsKICAgICAgICBmb3IodW5zaWduZWQgaSA9IChrKzEpOyBpIDw9IG47IGkrKykKICAgICAgICB7CiAgICAgICAgICAgIG5MaWN6bmlrICo9IGk7CiAgICAgICAgfQoKICAgICAgICBmb3IodW5zaWduZWQgaSA9IDE7IGkgPD0gKG4gLSBrKTsgaSsrKQogICAgICAgIHsKICAgICAgICAgICAgbk1pYW5vd25payAqPSBpOwogICAgICAgIH0KICAgIH0KICAgIGVsc2UKICAgIHsKICAgICAgICBmb3IodW5zaWduZWQgaSA9ICgobiAtIGspKzEpOyBpIDw9IG47IGkrKykKICAgICAgICB7CiAgICAgICAgICAgIG5MaWN6bmlrICo9IGk7CiAgICAgICAgfQoKICAgICAgICBmb3IodW5zaWduZWQgaSA9IDE7IGkgPD0gazsgaSsrKQogICAgICAgIHsKICAgICAgICAgICAgbk1pYW5vd25payAqPSBpOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gbkxpY3puaWsgLyBuTWlhbm93bmlrOwp9CgppbnQgbWFpbigpCnsKICAgIHVuc2lnbmVkIG5JbGUsIG4sIGs7CiAgICBjaW4gPj4gbklsZTsKCiAgICBmb3IodW5zaWduZWQgaSA9IDA7IGkgPCBuSWxlOyBpKyspCiAgICB7CiAgICAgICAgY2luID4+IG4gPj4gazsKICAgICAgICBjb3V0IDw8IER3dW1pYW4obiwgaykgPDwgZW5kbDsKICAgIH0KCgogICAgcmV0dXJuIDA7Cn0=