Cod sursa(job #1739184)

Utilizator Bodo171Bogdan Pop Bodo171 Data 8 august 2016 19:32:42
Problema Ratphu Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <iostream>
#include<fstream>
using namespace std;
int i,j,l,k,p,pu[20];
long long modes[(1<<18)][25],n,v[19];
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;
    pu[0]=1;
    for(i=1;i<=18;i++) pu[i]=2*pu[i-1];
    for(i=0;i<pu[k];i++)
    {
          for(j=0;j<p;j++)
            {
            if(modes[i][j]!=0)
             for(l=0;l<k;l++)
                if((i&pu[l])==0)
               {
                modes[i+pu[l]][(j*10+v[l])%p]+=modes[i][j];
               }
            }
    }
    g<<modes[(1<<k)-1][0];
    return 0;
}