Cod sursa(job #1219062)

Utilizator pulseOvidiu Giorgi pulse Data 13 august 2014 12:30:13
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <cstdio>

using namespace std;

int P;

int Solve(int n)
{
    int ans = 0;
    while (n / 5)
	{
		ans += n / 5;
		n /= 5;
	}
	return ans;
}

int BS(int l, int r)
{
    if (l == r)
    {
        if (Solve(r) == P)
            return r;
        else
            return -1;
    }
    int m = (l + r) / 2;
    if (Solve(m) >= P)
        BS(l, m);
    else
        BS(m + 1, r);
}

int main()
{
    freopen("fact.in", "r", stdin);
    freopen("fact.out", "w", stdout);
    scanf("%d", &P);
    printf("%d\n", BS(1, 2000000000));
    return 0;
}