Cod sursa(job #1013811)

Utilizator Mastertrap21Danceanu Madalin Mastertrap21 Data 21 octombrie 2013 19:15:23
Problema Factorial Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<fstream>
using namespace std;
int n;
 
ifstream f("fact.in");
ofstream g("fact.out");
 
int check(int nr)
{
    int fives = 0;
    int c = 5;
    while(c <= nr)
    {
        fives += nr/c;
        c = c * 5;
    }
    return fives;
}
 
int search(int start, int end)
{
	if(end < start) return -1;
    int nr = (start + end) / 2;
    int fives = check(nr);
    if(fives == n && nr%5 == 0) return nr;
    return (fives > n) ? search(start, nr-1) : search(nr+1, end);
}
 
int main()
{
    f>>n;
	if(n == 0) g<<1;
	else g<<search(1, 5*n)<<endl;
	return 0;
}