Cod sursa(job #166537)

Utilizator firewizardLucian Dobre firewizard Data 28 martie 2008 03:05:20
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <stdio.h>
long long n,p,c,nrz,dr,st;

long long nrze( long c )
{
     long long p = 0;
     while( c )
     {
            p += c/5;
            c /= 5;
     }
     return p;
}


int main()
{
    freopen("fact.in","r",stdin);
    freopen("fact.out","w",stdout);
    scanf("%ld",&p);
      
st=0;
dr=1000000000;
n=1;
if(p==0)printf("1");
else 
if(p>0){
while(n){  c=(st+dr)/2;
              nrz=nrze(c);
              if(st>dr) {n=-1;break;} 
              if(nrz==p&&st==dr) {n=st;break;} 
    	      if(p>nrz) st=c+1;
   	  	else dr=c;                            
           }
           printf("%lld",n);  
}
    return 0;
}