Cod sursa(job #194890)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 15 iunie 2008 00:03:01
Problema Pascal Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include<stdio.h>

int n,p[100],sol=0,d,x,i;

void pascal1()
{

x=n-i;
while (x%2==0)
	       x/=2,
	       p[2]++;
while (x%3==0)
	       x/=3,
	       p[3]++;
while (x%5==0)
	       x/=5,
	       p[5]++;

x=i+1;
while (x%2==0)
	       x/=2,
	       p[2]--;
while (x%3==0)
	       x/=3,
	       p[3]--;
while (x%5==0)
	       x/=5,
	       p[5]--;

if (d==2) sol+=(p[2]>=1);
   if (d==3) sol+=(p[3]>=1);
      if (d==4) sol+=(p[2]>=2);
	 if (d==5) sol+=(p[5]>=1);
	    if (d==6) sol+=(p[2]>=1 && p[3]>=1);
}

int main()
{
freopen("pascal.in","rt",stdin);
freopen("pascal.out","wt",stdout);
scanf("%d %d", &n, &d);
i=0;
while (i<((n+1)/2-1))
{
pascal1();
i++;
}
sol*=2;
if (n%2==0) pascal1;
printf("%d", sol);
return 0;}