Pagini recente » Cod sursa (job #1550431) | Cod sursa (job #1387937) | Cod sursa (job #771769) | Cod sursa (job #2025240) | Cod sursa (job #1941892)
#include <iostream>
#include <cstdio>
#include <climits>
using namespace std;
FILE*fin=fopen("fact.in","r");
FILE*fout=fopen("fact.out","w");
int zerouri(int n)
{
int p = 1 , s = 0 ;
while ( p * 5 <= n )
{
p *= 5 ;
s = s + n / p ;
}
return s ;
}
int main()
{
int n , s = 0 , g = 1 , mij , p ;
fscanf( fin , "%d" , &p );
int st = 1 , dr = INT_MAX ;
bool ok = false ;
while ( st <= dr && ok == false )
{
mij = ( st + dr ) / 2 ;
g = zerouri(mij) ;
if ( p < g )
{
dr = mij - 1 ;
}
else
if ( p > g )
{
st = mij + 1 ;
}
else ok = true ;
}
if ( ok ) fprintf( fout , "%d" , mij - ( mij % 5 ) ) ;
else fprintf( fout , "-1") ;
return 0;
}