Pagini recente » Monitorul de evaluare | Cod sursa (job #2484885) | Cod sursa (job #307630) | Cod sursa (job #441175) | Cod sursa (job #1260264)
#include<cstdio>
long long n,k,p,nr,i,j,d[1<<20][20],v[100];
FILE *f,*g;
int main(){
f=fopen("ratphu.in","r");
g=fopen("ratphu.out","w");
fscanf(f,"%lld%lld",&n,&p);
while(n!=0){
v[nr]=n%10;
n/=10;
d[1<<nr][v[nr]%p]=1;
nr++;
}
for(i=1;i<1<<nr;i++){
for(j=0;j<nr;j++){
if(!((1<<j)&i)){
for(k=0;k<p;k++){
d[(1<<j)|i][(v[j]+k*10)%p]+=d[i][k];
}
}
}
}
fprintf(g,"%lld",d[(1<<nr)-1][0]);
fclose(f);
fclose(g);
return 0;
}