Cod sursa(job #16681)

Utilizator sigridMaria Stanciu sigrid Data 13 februarie 2007 21:03:02
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<fstream.h>
unsigned long p,x,y,rez,k,c,jum;
void cont(unsigned long jum)
{unsigned long i;
 for(i=5;i<=jum;i=i*5)
   c=c+jum/i;
}
unsigned long caut()
{while(x<y)
 {jum=(x+y)/2;
  if(k==jum) return 0;
    else k=jum;
  c=0;
  cont(jum);
  if(c==p) return (jum-jum%5);
    else if(c<p) x=jum;
	  else y=jum;
 }
return 0;
}
int main()
{ifstream f("fact.in");
 ofstream g("fact.out");
 f>>p;
 f.close();
 if(!p) {g<<1<<'\n';g.close();return 0;}
 y=4200000000;
 rez=caut();
 if(!rez) {g<<-1<<'\n';g.close();}
  else {g<<rez<<'\n';g.close();}
return 0;
}