Pagini recente » Cod sursa (job #927613) | Cod sursa (job #2892607) | Cod sursa (job #2550237) | Cod sursa (job #86412) | Cod sursa (job #2980805)
#include <iostream>
#include <fstream>
#define input "fact.in"
#define output "fact.out"
#define ull unsigned long long
using namespace std;
int p;
inline ull zeroCount (ull n)
{
ull currentPower = 5;
ull result = 0;
while (n >= currentPower)
{
result += n/currentPower;
currentPower*=5;
}
return result;
}
int main()
{
ifstream f (input);
ofstream g (output);
f >> p;
ull RIGHT = 10000000000;
ull LEFT = 1;
ull MID;
while (LEFT < RIGHT)
{
MID = (LEFT+RIGHT)/2;
if (zeroCount(MID) > p)
{
RIGHT = MID - 1;
}
else if (zeroCount(MID) < p)
{
LEFT = MID + 1;
}
else
{
break;
}
}
ull zeroCNow=zeroCount(MID);
while (zeroCount(MID) == zeroCNow && MID>=1)
MID--;
g<<MID+1;
return 0;
}