Pagini recente » Cod sursa (job #1668664) | Cod sursa (job #2265046) | Cod sursa (job #487376) | Cod sursa (job #1446650) | Cod sursa (job #2215247)
#include <bits/stdc++.h>
using namespace std;
int r, m;
int k;
int legp(int p, int a)
{
int rez = 0, p1 = p;
for(int i = 1; a / p1; i++, p1 *= p)
rez += a / p1;
return rez;
}
int leg(int a)
{
int m1 = m, x = 2, mi = -1;
while(m1 > 1)
{
if(x * x > m1)
x = m1;
int e = 0;
while(m1 % x == 0)
{
m1 /= x;
e++;
}
if(e > 0)
{
int lp = legp(x, a);
if(lp / e < mi || mi == -1)
mi = lp / e;
}
x++;
}
return mi;
}
int main()
{
ifstream fin ("pascal.in");
ofstream fout ("pascal.out");
fin >> r >> m;
for(int i = 0; i <= r; i++)
if(leg(r) != leg(i) + leg(r - i))
k++;
fout << k << "\n";
return 0;
}