Pagini recente » Cod sursa (job #1333374) | Cod sursa (job #1714234) | Cod sursa (job #1180550) | Cod sursa (job #1755015) | Cod sursa (job #2673359)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ( "fact.in" );
ofstream fout ( "fact.out" );
int p;
int NrZero( int x )
{
int nr = 0;
for ( int i = 5; i <= x; i *= 5 )
nr += x / i;
return nr;
}
int CautaBinar ( int p )
{
int st = 5; int dr = 1e9;
while ( st <= dr )
{
int mij = st + (dr - st) / 2;
if ( mij % 10 < 5 ) mij -= mij % 10;
else mij = (mij / 10) * 10 + 5;
int nrzero = NrZero( mij );
if ( nrzero == p )
return mij;
else if ( nrzero < p )
st = mij + 5;
else dr = mij - 5;
}
return -1;
}
int main()
{
fin >> p;
if ( p == 0 ) fout << 1;
else fout << CautaBinar( p );
return 0;
}