Pagini recente » Cod sursa (job #2079511) | Cod sursa (job #3039299) | Cod sursa (job #2747174) | Cod sursa (job #1589101) | Cod sursa (job #1323997)
#include <fstream>
using namespace std;
ifstream f("ratphu.in");
ofstream g("ratphu.out");
string s;
int p,u,d[1<<18+1][20],a[20],i,j,z;
int main()
{
f>>s>>p;
u=s.length();
for (i=0;i<u;i++)
a[i+1]=s[i]-'0';
for (i=1;i<=u;i++)
d[(1<<i)][a[i]%p]=1;
for (i=0;i<(1<<u);i++)
for (j=0;j<u;j++)
if (!(i & (1<<j)))
for (z=0;z<=p-1;z++)
d[i | (1<<j)][(z*10+a[i])%p]+=d[i][z];
g<<d[(1<<u)-1][0];
return 0;
}