Pagini recente » Cod sursa (job #1527468) | Cod sursa (job #213720) | Cod sursa (job #1190690) | Cod sursa (job #1011884) | Cod sursa (job #166631)
Cod sursa(job #166631)
#include <stdio.h>
int n,d,a[8],b[8],c[8];
int main()
{
freopen("pascal.in","r",stdin);
freopen("pascal.out","w",stdout);
scanf("%d%d",&n,&d);
int i,j;
for (i=2; i<=d; ++i)
{
while (d%i==0)
{
++a[i];
d/=i;
}
}
int x;
int sol=0;
for (i=1; i<=n/2; ++i)
{
x=n-i+1;
for (j=2; j<=5; ++j)
{
while (x%j==0)
{
++b[j];
x/=j;
}
c[j]=b[j];
}
x=i;
for (j=2; j<=5; ++j)
{
while (x%j==0)
{
--c[j];
x/=j;
}
}
int q=0;
for (j=2; j<=5; ++j)
{
if (a[j]>c[j])
{
q=1;
break;
}
b[j]=c[j];
}
if (q==0) ++sol;
}
sol=sol*2;
if (n%2==0) --sol;
printf("%d\n",sol);
return 0;
}