Pagini recente » Cod sursa (job #2032172) | Cod sursa (job #1556793) | Cod sursa (job #2197205) | Cod sursa (job #2365824) | Cod sursa (job #1607451)
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int main()
{
int n , c ;
long long st , dr , m , x ;
st=1 ;dr=1000000000 ;//[st,dr]=intervalul de cautare pentru numarul n
f>>n ;
while(st<=dr)
{
m=(st+dr)/2 ;//imaprt intervalul de cautare in doua
x=m; c=0;
while(m!=0)
{
c=c+m/5 ;
m=m/5;
}
if(c==n)
{
if(x-x%5==0) g<<"1";
else g<<x-x%5 ;
dr=-1 ;
}
else if(c>n) dr=(st+dr)/2-1 ;
else st=(st+dr)/2+1 ;
}
if(dr!=-1) g<< "-1";
return 0;
}