Pagini recente » Cod sursa (job #706438) | Cod sursa (job #2707160) | Cod sursa (job #2550381) | Cod sursa (job #1186549) | Cod sursa (job #2377842)
#include <fstream>
using namespace std;
ifstream cin ("fact.in");
ofstream cout ("fact.out");
long long int dr = 500000000;
int main()
{
long long int p, fr5, st = 1, mid;
cin >> p;
if( p == 5 )
{
cout << -1;
return 0;
}
else if( !p )
{
cout << 1;
return 0;
}
int x;
while(st < dr)
{
mid = (st + dr) / 2;
fr5 = 0;
x = 5;
while(x <= mid)
{
fr5 += mid / x;
x = x * 5;
}
if( fr5 >= p ) dr = mid;
else if( fr5 < p ) st = mid + 1;
}
fr5 = 0;
x = 5;
while(x <= st)
{
fr5 += st / x;
x = x * 5;
}
if(fr5 == p)
cout << st;
else cout << -1;
return 0;
}