Cod sursa(job #780094)

Utilizator lehman97Dimulescu David lehman97 Data 19 august 2012 21:33:56
Problema Pascal Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <stdio.h>

FILE *f=fopen("pascal.in","r");
FILE *g=fopen("pascal.out","w");

int r,d,j,k,nr,nr2,i,ci,fac[5000000],nr3;


int main(){
fac[0]=0;
fscanf(f,"%d%d",&r,&d);
k=0;
nr=0;
nr2=0;
nr3=0;
for(i=1;i<=r;i++){
ci=i;
nr=0;
if(d==2 || d==3 || d==5)
while(ci%d==0){ci=ci/d;nr++;} else
{
    if(d==4) {
        while(ci%2==0){ci=ci/2;nr++;}
        nr=nr/2;
    }
    if(d==6){
    while(ci%2==0){ci=ci/2;nr2++;}
    while(ci%3==0){ci=ci/3;nr3++;}

    while (nr2 && nr3) {nr++; nr2--;nr3--;}
    }
}
fac[i]=fac[i-1]+nr;
}


for(j=0;j<=r;j++){
if(fac[r]>(fac[r-j]+fac[j])) k++;

}

fprintf(g,"%d",k);
fclose(g);
return 0;
}