Cod sursa(job #1907909)
Utilizator | Mircea Burlacu deuceffs | Data | 6 martie 2017 21:38:36 |
---|---|---|---|
Problema | Factorial | Scor | 60 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.53 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int r(-1), s(1), f(100000000), p, mijl, zr;
int main()
{
in>>p;
while (s <= f){
mijl = (s+f)/2;
zr = 0;
for (int q = 5; q <= mijl; q*= 5){
zr += (mijl/q);
};
if (zr == p){
r = mijl;
f = mijl-1;
} else if (zr > p){
f = mijl - 1;
} else s = mijl + 1;
};
out<<r;
return 0;
}