Cod sursa(job #1332831)

Utilizator nnnmmmcioltan alex nnnmmm Data 2 februarie 2015 14:50:35
Problema Pascal Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include<stdio.h>
int p2[5000001],p3[5000001],p5[5000001],r,d;
int main()
{
 freopen("pascal.in","r",stdin);
 freopen("pascal.out","w",stdout);
 scanf("%d %d ",&r,&d);
 for(int i=1;i<=r;i++)
     {
      if(i%2==0)
         p2[i]=p2[i/2]+1;
      if(i%3==0)
         p3[i]=p3[i/3]+1;
      if(i%5==0)
         p5[i]=p5[i/5]+1;
     }
 int s2,s3,s5,s;
 s2=s3=s5=s=0;
 for(int i=1;i<=r;i++)
     {
      s2+=p2[r-i+1]-p2[i];
      s3+=p3[r-i+1]-p3[i];
      s5+=p5[r-i+1]-p5[i];
      if(d==2 && s2>0)
         s++;
      if(d==3 && s3>0)
         s++;
      if(d==4 && s2>1)
         s++;
      if(d==5 && s5>0)
         s++;
      if(d==6 && s2>0 && s3>0)
         s++;
     }
 printf("%d",s);
fclose(stdin);
fclose(stdout);
return 0;
}