Cod sursa(job #16694)

Utilizator sigridMaria Stanciu sigrid Data 13 februarie 2007 21:09:20
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<fstream.h>
unsigned long p,x,y=4200000000,k,c,jum;
ofstream g("fact.out");
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) {g<<-1<<'\n';
	      g.close();
	      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;
 }
g<<-1<<'\n';
g.close();
return 0;
}
int main()
{ifstream f("fact.in");
 f>>p;
 f.close();
 if(!p) {g<<1<<'\n';g.close();return 0;}
 g<<caut()<<'\n';
 g.close();
return 0;
}