Pagini recente » Cod sursa (job #264033) | Cod sursa (job #879000) | Cod sursa (job #3273019) | Cod sursa (job #1606956) | Cod sursa (job #2546239)
#include <bits/stdc++.h>
#define int long long
using namespace std;
ifstream in("ratphu.in");
ofstream out("ratphu.out");
int v[25][250005], fr[20], c[305];
int32_t main()
{
int n, k, sz = 0;
in >> n >> k;
while(n > 0)
{
fr[sz++] = n % 10;
n /= 10;
}
for(int i = 1; i < 300; i ++)
c[i] = i % k;
v[0][0] = 1;
for(int i = 0; i < (1 << sz); i ++)
for(int j = 0; j < sz; j ++)
if((i & (1 << j)) == 0)
for(int h = 0; h < k; h ++)
v[c[(h * 10 + fr[j])]][i | (1 << j)] += v[h][i];
out << v[0][(1 << sz) - 1];
return 0;
}