Pagini recente » Diferente pentru template/algoritmiada-2009/header intre reviziile 6 si 25 | Diferente pentru template/preoni-2007 intre reviziile 16 si 17 | Cod sursa (job #931459) | Cod sursa (job #422776) | Cod sursa (job #1871333)
#include <fstream>
using namespace std;
ifstream f ("fact.in");
ofstream g ("fact.out");
int P, st, dr, mij;
int nrz(int x) {
int pow = 5, rez = 0;
while(x >= pow) rez += (x / pow), pow *= 5;
return rez;
}
int main()
{
f >> P;
st = 1, dr = 5 * P;
while(st < dr) {
mij = (st + dr) / 2;
if(nrz(mij) < P) st = mij + 1;
else dr = mij - 1;
}
if(nrz(st) == P) g << st << "\n";
else g << "-1\n";
return 0;
}