Pagini recente » Cod sursa (job #1383544) | Cod sursa (job #2091330) | Monitorul de evaluare | Diferente pentru warm-up-2019/solutii/shoturi intre reviziile 72 si 99 | Cod sursa (job #1308519)
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int f(int a)
{
int s = 0, x = 5;
while(x <= a) {
s += a / x;
x *= 5;
}
return s;
}
int main()
{
int st=0, x, mij, dr = 1000000000, p, n = -1;
in >> p;
if(p==0) {
out << 1;
return 0;
}
while(st <= dr) {
mij=(st+dr)/2;
if(f(mij) > p)
dr = mij - 1;
if(f(mij)<p)
st = mij + 1;
if(f(mij) == p) {
n = mij;
dr = mij - 1;
}
}
out << n;
return 0;
}