Cod sursa(job #1147476)

Utilizator andreiagAndrei Galusca andreiag Data 19 martie 2014 21:16:56
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <fstream>
#include <algorithm>

using namespace std;

int P;

inline int fun(int X)
{
    int ret = 0;
    while (X) { ret += X/5; X /= 5; }
    return ret;
}

int binary(int low, int high, int val)
{
    int mid, tmp;
    while (low < high)
    {
        mid = low + (high - low) / 2;
        tmp = fun(mid);
        if (tmp < val) low = mid+1;
        else high = mid;
    }
    return low;
}

int main()
{
    ifstream f ("fact.in");
    ofstream g ("fact.out");

    f >> P;
    int answer = binary(4*P + 1, 5*P + 1, P);
    g << answer << '\n';

    return 0;
}