Cod sursa(job #359901)

Utilizator costin22Muraru Costin costin22 Data 28 octombrie 2009 19:15:34
Problema Pascal Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.94 kb
#include<cstdio>
int r,d,n=0;
int div[10];

void cons()
{
   int r2=r;
   for(int i=2;i<=5;i++)
      while(r2%i==0)
      {
         r2=r2/i;
         div++;
      }
}
void daca()
{
   if(d==2)
      if(div[2])
         n++;
   if(d==3)
      if(div[3])
         n++;
   if(d==4)
      if(div[2]>=2)
         n++;
   if(d==5)
      if(div[5])
         n++;
   if(d==6)
      if(div[2] && div[3])
         n++;
}
void transf(int j)
{
   int a,b;
   a=r-j;
   b=j+1;
   for(int i=2;i<=5;i++)
      while(a%i==0)
      {
         a=a/i;
         div++;
      }
   for(int i=2;i<=5;i++)
      while(b%i==0)
      {
         b=b/i;
         div--;
      }
}
int main()
{

   freopen("pascal.in","r",stdin);
   freopen("pascal.out","w",stdout);
   scanf("%d %d",&r,&d);
   cons();
   daca();
   for(int j=2;j<=r-1;j++)
   {
      transf(j-1);
      daca();
   }
   
   printf("%d",n);
   
   return 0;
}