Cod sursa(job #544376)

Utilizator SadmannCornigeanu Calin Sadmann Data 1 martie 2011 15:42:06
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<stdio.h>
FILE *in,*out;
int nr0,p;
int num,aux,aux2;

int main()
{
	in=fopen("fact.in","rt");
	out=fopen("fact.out","wt");
	fscanf(in,"%d",&p);
    if(!p)
    {
        fprintf(out,"1");
        fclose(in);
        fclose(out);
        return 0;
    }
    while(nr0<p)
    {
        num+=25;
        nr0+=4;
        aux=num;
        if(nr0<p)
        {
            while( !(aux%5) )
            {
				nr0++;
				aux/=5;
			}
		}
		else
		{
			aux2=nr0-p+1;
			num-=5*aux2;
			nr0-=aux2-1;
		}
    }
    fprintf(out,"%d",nr0==p ? num : -1);
    fclose(in);
    fclose(out);
	return 0;

}