Pagini recente » Cod sursa (job #1878013) | Statistici deep freeze (dipfreezyo) | Cod sursa (job #1822576) | Cod sursa (job #370757) | Cod sursa (job #2913318)
#include <fstream>
#define DR (1 << 29)
using namespace std;
ifstream cin("fact.in");
ofstream cout ("fact.out");
int cate_zero(int n){
int nr = 0;
while (n >=5)
{
nr+= (n/5);
n /=5;
}
return nr;
}
int caut_binara(int p){
int st = 1, dr = DR, rez = DR+1;
while (st <= dr){
cout << "dr = " << dr << endl;
int mij = (st + dr)/2;
if (cate_zero(mij) >= p)
{
rez = mij;
dr = mij-1;
}
else
{
st = mij+1;
}
}
return rez;
}
int main(){
int n,p;
cin >> p;
n = caut_binara(p);
if (cate_zero(n) != p)
n = -1;
cout << n;
}