Pagini recente » Cod sursa (job #1943840) | Cod sursa (job #1340180) | Cod sursa (job #331387) | Cod sursa (job #3132743) | Cod sursa (job #473498)
Cod sursa(job #473498)
#include<algorithm>
using namespace std;
char c[20];
int i,j,k,n,p;
long long rez[(1<<18)+2][20];
int main()
{
freopen("ratphu.in","r",stdin);
freopen("ratphu.out","w",stdout);
scanf("%s %d",c,&p);
for(i=0;'0'<=c[i]&&c[i]<='9';i++,n++)
c[i]-='0';
rez[0][0]=1;
for(i=0;i<(1<<n);i++)
for(k=0;k<n;k++)
for(j=0;j<p;j++)
if((i&(1<<k))==0)
rez[i+(1<<k)][(j*10+c[k])%p]+=rez[i][j];
printf("%lld\n",rez[(1<<n)-1][0]);
return 0;
}