Pagini recente » Cod sursa (job #1497404) | Cod sursa (job #2279634) | Cod sursa (job #1979769) | Cod sursa (job #229559) | Cod sursa (job #1070906)
//
// main.cpp
// factorial
//
// Created by Catalina Brinza on 11/30/13.
// Copyright (c) 2013 Catalina Brinza. All rights reserved.
//
#include <fstream>
#define nru 100000000
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int p;
int cautare(int a,int b)
{int m,nr=0;
if (a>b) return -1;
m=a+(b-a)/2;
int k=5;
int q=m/5;
while (q>0)
{
nr+=q;
k=k*5;
q=m/k;
if (nr>p) break;
}
if (nr==p)
{
m-=m%5;
int k=5;
int q=m/5;
while (q>0)
{
nr+=q;
k=k*5;
q=m/k;
if (nr>p) break;
}
if (nr==p) return m;
else return m+1;
}
else if (nr>p)
return cautare(a,m-1);
else return cautare(m+1,b);
}
int main()
{
in>>p;
out<<cautare(5,nru);
return 0;
}