Pagini recente » Cod sursa (job #2320696) | Cod sursa (job #2200578) | Cod sursa (job #765691) | Cod sursa (job #871423) | Cod sursa (job #772358)
Cod sursa(job #772358)
#include <stdio.h>
#include <stdlib.h>
int zeros( int n )
{
int z = 0;
do {
n = n / 5;
z += n;
} while( n != 0 );
return z;
}
int main( void )
{
int P, z;
int st, dt, m;
freopen( "fact.in", "r", stdin );
freopen( "fact.out", "w", stdout );
scanf( "%d", &P );
if ( P == 0 ) {
printf( "1\n" );
return EXIT_SUCCESS;
}
st = 1;
dt = 5 * P;
while ( st <= dt ) {
m = ( st + dt ) / 2;
z = zeros( m );
if ( z == P ) {
printf("%d\n", m - m % 5 );
return EXIT_SUCCESS;
} else if ( z < P ) {
st = m + 1;
} else {
dt = m - 1;
}
}
printf( "%d\n", -1 );
return EXIT_SUCCESS;
}