Pagini recente » Cod sursa (job #973056) | Cod sursa (job #2790112) | Cod sursa (job #2814331) | Cod sursa (job #944233) | Cod sursa (job #2551282)
#include <fstream>
using namespace std;
ifstream f("ratphu.in");
ofstream g("ratphu.out");
long long n, p;
int k, v[20];
int x[20];
bool u[20];
long long rez;
void bkt(int n)
{
for (int i=1; i<=k; i++)
if (!u[i])
{
x[n] = i;
u[i] = 1;
if (n == k)
{
long long nr = 0;
for (int j=1; j<=n; j++)
nr = nr * 10 + v[x[j]];
if (nr % p == 0)
rez++;
}
else
bkt(n+1);
u[i] = 0;
}
}
int main()
{
f >> n >> p;
while (n)
{
k++;
v[k] = n % 10;
n /= 10;
}
bkt(1);
g << rez;
return 0;
}