Pagini recente » Cod sursa (job #826520) | Cod sursa (job #358662) | Cod sursa (job #1872269) | Cod sursa (job #1619800) | Cod sursa (job #1739181)
#include <iostream>
#include<fstream>
#define modes(x)(y) modes(y)(x)
using namespace std;
long long modes[(1<<18)][25],n,p,k,v[19],i,j,l;
int main()
{
ifstream f("ratphu.in");
ofstream g("ratphu.out");
f>>n>>p;
while(n!=0)
{
v[k]=n%10;
k++;
n/=10;
}
modes[0][0]=1;
for(i=0;i<(1<<(k));i++)
{
for(j=0;j<p;j++)
{
if(modes[i][j]!=0)
for(l=0;l<k;l++)
if((i&(1<<l))==0)
{
modes[i+(1<<l)][(j*10+v[l])%p]+=modes[i][j];
}
}
}
g<<modes[(1<<k)-1][0];
return 0;
}