Pagini recente » Cod sursa (job #1313542) | Cod sursa (job #1524182) | Cod sursa (job #534642) | Cod sursa (job #473333) | Cod sursa (job #1722367)
#include <iostream>
#include <fstream>
using namespace std;
long long tz(unsigned long long number)
{
int n,multipleOfFive;
unsigned long long total;
multipleOfFive = 5;
n = number/5;
total = 0;
do
{
total+= n;
multipleOfFive*=5;
n = number/multipleOfFive;
}while(n>=1);
return total;
}
int main()
{
ifstream f("fact.in");
ofstream g("fact.out");
unsigned long long p,a,b,c,n;
f>>n;
a = 0;
b = 92233720368547758;
c = (b + a)/2;
p = tz(c);
if(n==0)g<<1;
else
{
while(p!=n)
{
if(p<n)
{
a = c+1;
}
else if(p> n)
{
b = c - 1;
}
else break;
c = (a + b)/2;
p = tz(c);
if(p == n || a == b) break;
}
if( a == b && p!=n)g<<-1;
else
{ while(c%5!=0)--c;
g<<c;
}
}
return 0;
}