STL全排列
代码
//By AcerMo
#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define lli long long int
using namespace std;
lli n,t,x[15],m;
char s[15];
inline int che()
{
lli ans=0;
for (int i=1;i<=n;i++)
ans=ans*10+x[i];
return ((ans%m)==0);
}
signed main()
{
scanf("%d",&t);
while (t--)
{
scanf("%s%d",s+1,&m);
n=strlen(s+1);lli ans=0;
for (int i=1;i<=n;i++) x[i]=s[i]-'0';sort(x+1,x+n+1);
do ans+=che();while (next_permutation(x+1,x+1+n));
cout<<ans<<endl;
}
return 0;
}