Pagini recente » Clasament pregatire_lot_juniori1 | Monitorul de evaluare | Istoria paginii runda/ceau_oni2017_1 | Istoria paginii utilizator/eugenstoica | Cod sursa (job #2779427)
#include <fstream>
using namespace std;
int main() {
ifstream fin ( "fact.in" );
ofstream fout ( "fact.out" );
long long n, st, dr, mij, k = 0, p;
fin >> n;
if ( n == 0 )
fout << "1";
else{
st = 0;
dr = 500000000;
while ( st != dr ){
mij = ( st + dr ) / 2;
k = 0;
for ( p = 5; p <= mij; p *= 5 )
k = k + mij / p;
if ( k < n )
st = mij + 1;
else
dr = mij;
}
k = 0;
for ( p = 5; p <= st; p *= 5 )
k = k + st / p;
if ( n == k )
fout << st;
else
fout << "-1";
}
return 0;
}