Pagini recente » Cod sursa (job #2845996) | Cod sursa (job #692119) | Cod sursa (job #2978586) | Cod sursa (job #2737653) | Cod sursa (job #451081)
Cod sursa(job #451081)
#include <stdio.h>
int a[7];
int main()
{
int n,d,i,j,k,nd,m,c;
freopen("pascal.in","r",stdin);
freopen("pascal.out","w",stdout);
scanf("%d%d",&n,&d);
nd=0;
k=n;m=n/2;c=0;
for (i=0;i<m;i++)
{
int ax=k;
while (!(ax%2))
{
ax/=2;
a[2]++;
}
while (!(ax%3))
{
ax/=3;
a[3]++;
}
while (!(ax%5))
{
ax/=2;
a[5]++;
}
ax=n-k+1;
while (!(ax%2))
{
ax/=2;
a[2]--;
}
while (!(ax%3))
{
ax/=3;
a[3]--;
}
while (!(ax%5))
{
ax/=2;
a[5]--;
}
if (d==2 || d==3 || d==5)
{
if (a[d])
c++;
}
else if (d==4)
{
if (a[2]/2)
c++;
}
else
{
if (a[2] && a[3])
c++;
}
k--;
}
if ( !(n%2) )
{
c= (nd) ?(c-1)*2 +1 : c*2;
}
else
{
c*=2;
}
printf("%d\n",c);
return 0;
}