Pagini recente » Cod sursa (job #206489) | Cod sursa (job #1932785) | Cod sursa (job #760943) | Cod sursa (job #279519) | Cod sursa (job #629049)
Cod sursa(job #629049)
#include <cstdio>
#include <iostream>
#define infile "factorial.in"
#define outfile "factorial.out"
using namespace std;
int N, P;
int nrZero(int val)
{
int nr = 0, p = 5;
while( val>=p )
{
nr += val / p;
p *= 5;
}
return nr;
}
void search(int li, int lf)
{
int m, nr;
while( li <= lf )
{
m = li + ( lf - li ) / 2;
nr = nrZero( 5*m );
if( nr == P )
N = 5 * m;
if( nr < P)
li = m + 1;
else
lf = m - 1;
}
}
int main()
{
freopen( infile, "r", stdin );
freopen( outfile, "w", stdout);
cin >> P ;
N = -1;
if( P == 0)
N = 1;
else
search( 1, P );
cout << N << "\n";
fclose(stdin);
fclose(stdout);
return 0;
}