Pagini recente » Cod sursa (job #2370005) | Cod sursa (job #1358221) | Cod sursa (job #1746734) | Cod sursa (job #1472782) | Cod sursa (job #1358190)
#include <iostream>
#include <cstdio>
#define n_max 100000000
#define inf 0x3f3f3f3f
using namespace std;
long long nr ;
void caut_bin() ;
int main()
{
freopen( "fact.in" , "r" , stdin ) ;
freopen( "fact.out" , "w" , stdout ) ;
scanf( "%lld" , &nr ) ;
caut_bin() ;
return 0;
}
long long verif( long long m )
{
long long sum = 0 , i = 5 ;
while ( m / i )
{
sum += m / i ;
i *= 5 ;
}
if ( sum == nr )
return 0 ;
else if ( sum > nr )
return 1 ;
return -1 ;
}
void caut_bin()
{
long long st = 1 , dr = n_max , n = inf ;
while ( st <= dr )
{
long long m = st + ( dr - st ) / 2 ;
long long k = verif(m) ;
if ( k == 0 )
{
if ( m < n )
n = m ;
dr = m - 1 ;
}
else if ( k == 1 )
dr = m - 1 ;
else
st = m + 1 ;
}
if ( n == inf )
{
printf( "-1\n" ) ;
return ;
}
printf( "%lld\n" , n ) ;
}