#include<bits/stdc++.h>
using namespace std;
int n[10001], s, t, m, x, y, cnt, yu;
void lgx(int t)
{
n[1]=1;
s=1;
for(int i=1;i<=t;i++)
{
yu=0;
for(int j=1;j<=s;j++)
{
n[j]=n[j]*i+yu;
yu=n[j]/10;
n[j]%=10;
}
n[s+1]+=yu;
while(n[s+1])
{
if(n[s+1]>=10)
{
n[s+2]=n[s+1]/10;
n[s+1]%=10;
}
s++;
}
}
}
int main()
{
cin>>m;
for(int i=1;i<=m;i++)
{
memset(n,0,sizeof(n));
cnt=0;
cin >> x >> y;
lgx(x);
for (int j=s;j>=1;j--)
if (y==n[j])
cnt++;
printf("%d\n",cnt);
}
return 0;
}