Pagini recente » Cod sursa (job #2128906) | Cod sursa (job #2105283) | Cod sursa (job #3196786) | Cod sursa (job #298806) | Cod sursa (job #1046541)
#include <fstream>
using namespace std;
ifstream fin("factorial.in");
ofstream fout("factorial.out");
long long P, maxi = 500000000;
long long rez = -1;
long long cate(int n)
{
int d = 5, h = 0, c;
c = n / d;
while( c > 0)
{
h += c;
d *= 5;
c = n / d;
}
return h;
}
long long find_n()
{
int mij, mini = 1;
while( mini <= maxi)
{
mij = (mini + maxi)/2;
long long x = cate(mij);
if( x >= P){
maxi = mij - 1;
if( x == P) rez = mij;
}
else mini = mij + 1;
}
return rez;
}
int main()
{
fin >> P;
fout << find_n();
return 0;
}