Pagini recente » Cod sursa (job #2818519) | Cod sursa (job #2338289) | Cod sursa (job #1499384) | Cod sursa (job #1823444) | Cod sursa (job #1171654)
#include <fstream>
#include <iostream>
using namespace std;
int zero(int nr) {
int rez = 0;
while ( nr > 4 ) {
nr = nr / 5;
rez = rez + nr;
}
return rez;
}
int binary(int a, int b, int nr) {
if ( nr == 0 )
return 1;
if(a==b && zero(a)!=nr)
return -1;
int c = (a + b) / 2;
int bla = zero(c);
if ( bla == nr )
return c;
if ( bla > nr )
return binary(a, c - 1, nr);
if ( bla < nr )
return binary(c + 1, b, nr);
}
int main() {
ifstream f("fact.in");
int p;
f >> p;
f.close();
ofstream g("fact.out");
int rez = binary(1,400000015,p);
while( rez>1 && rez%5!=0 )
rez--;
g << rez;
g.close();
return 0;
}