Pagini recente » Cod sursa (job #2675981) | Cod sursa (job #1570494) | Cod sursa (job #409846) | Cod sursa (job #2079647) | Cod sursa (job #1937063)
#include <iostream>
#include <fstream>
using namespace std;
long zeros(long x) {
long pro = 5;
long db = 0;
while(pro<=x) {
db = db + x/pro;
pro = pro * 5;
}
return db;
}
long binary_s(long a,long b, long p) {
long c = (a+b)/2;
c = c - c % 5;
if((zeros(c))==p) {
return c;
}
else {
if(a==b) {
return -1;
}
else {
if(zeros(c)<p) {
return binary_s(c+5,b,p);
}
else {
return binary_s(a,c-5,p);
}
}
}}
int main()
{
ifstream f("fact.in");
ofstream g("fact.out");
long int p;
long int i = 0;
long db = 0;
f >> p;
if(p==0) {
g << 1;
}
else {
long a = 5; long b = 5 * p;
g << binary_s(a,b,p);
}
return 0;
}