Pagini recente » Cod sursa (job #2259148) | Cod sursa (job #2570475) | Cod sursa (job #1319455) | Cod sursa (job #2577865) | Cod sursa (job #1319351)
#include <fstream>
#include <string>
#include <vector>
using namespace std;
ifstream fi("ratphu.in");
ofstream fo("ratphu.out");
string s;
int p,i,j,k,x;
long long m[1<<18][21];
int main(){
fi>>s>>p;
for(i=0;i<s.size();++i){
s[i]=(s[i]-'0')%p;
m[1<<i][s[i]]=1;
}
for(i=0;i<(1<<s.size());++i)
for(j=0;j<s.size();++j)
if((i&(1<<j))==0)
for(int k=0;k<p;++k)
for(x=k*10+s[j];x>=p;x=x-p);
m[i|(1<<j)][x]+=m[i][k];
fo<<m[(1<<s.size())-1][0];
return 0;
}