Cod sursa(job #476448)

Utilizator VmanDuta Vlad Vman Data 10 august 2010 23:39:41
Problema Ratphu Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include <cstdio>

int P, i, j, k, n;
long long S[1<<18][20];
char c[18];

int main()
{
 freopen("ratphu.in","r",stdin);
 freopen("ratphu.out","w",stdout);
 do
    scanf("%c", &c[n++]);
 while (c[n-1] != ' ');
 scanf("%d", &P);
 --n;
 
 S[0][0] = 1;
 for (i=0; i<(1<<n); ++i)
     for (k=0; k<=n; ++k)
         if ((i&(1<<k))==0)
            for (j=0; j<P; ++j)
                S[i^(1<<k)][(j*10+c[k]-'0')%P] += S[i][j];
 
 printf("%lld\n", S[(1<<n)-1][0]);
 
 return 0;
}