Cod sursa(job #34780)

Utilizator pocaituDavid si Goliat pocaitu Data 21 martie 2007 13:31:34
Problema Pascal Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.94 kb
#include<stdio.h>
long n,i,d1,d2,c,nr1,nr2,k,dd,h;
int d;
long cmmdc(long a,long b)
{if(!b) return a;
 else
   return cmmdc(b,a%b);
 }

int main()
{freopen("pascal.in","r",stdin);
 scanf("%ld%ld",&n,&d);
 if(d!=6)
  {if(d==4) {h=1;d/=2;}
  for(i=1;i<n;i++)
   {//c=cmmdc(n-i+1,i);
	d1=(n-i+1);
	d2=i;
	if(!(d1%d))
	  while(!(d1%d))
		{d1/=d;
		 nr1++;
		 }
	if(!(d2%d))
	  while(!(d2%d))
		{d2/=d;
		 nr1--;
		 }
	if(nr1>0&&!h)
	  k++;
	else if(nr1>1&&h)
	  k++;
	}
   }

/* else
  {dd=d/2;
   d=d/dd;
   d1=(n-i+1);
   d2=i;
   if(!(d1%d))
	  while(!(d1%d))
		{d1/=d;
		 nr1++;
		 }
   if(!(d1%dd))
	  while(!(d1%d))
		{d1/=d;
		 nr2++;
		 }
	if(!(d2%d))
	  while(!(d1%d))
		{d1/=d;
		 nr1--;
		 }
	if(!(d2%dd))
	  while(!(d1%d))
		{d1/=d;
		 nr2--;
		 }
	if(nr1&&nr2)
	  k++;
	}*/






  freopen("pascal.out","w",stdout);
  printf("%ld",k);
  fclose(stdout);
  return 0;
  }