#include<bits/stdc++.h>
using namespace std;
int a[1000],len;
void fac(int n){
int carry = 0;
for(int i = 1; i <= len; i++){
a[i] = a[i]*n + carry;
carry = a[i]/10;
a[i] %= 10;
}
while(carry > 0){
a[++len] = carry%10;
carry /= 10;
}
}
int main(){
int t,n,a1;
cin >> t;
for(int k = 1; k <= t; k++){
int cnt = 0;
len = 1;
memset(a,0,sizeof(a));
a[1] = 1;
cin >> n >> a1;
for(int i = 1; i <= n; i++) fac(i);
for(int i = len; i >= 1; i--){
if(a1 == a[i]) cnt++;
}
cout << cnt << endl;
}
return 0;
}