Cod sursa(job #1027278)

Utilizator morlockRadu Tatomir morlock Data 12 noiembrie 2013 18:03:03
Problema Factorial Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;

ifstream in("fact.in");
ofstream out("fact.out");

long long P, step, N, Z, temp, nr, i;

long long fact(long long N)
{
    Z = N / 5;
    nr = log(Z)/log(5);

    return nr;

}

int main()
{
    in >> P;

    step = 1ll<<30;
    for ( ; step >= 5; step >>= 1 )
    {
        N = step;
        Z = N / 5;
        nr = log(Z)/log(5);
        Z += nr;

        if ( Z <= P )
        {
            N =  N + (P - Z - (fact(N<<1) - nr) )*5;
            N = N - (N % 5);
            out << N;
            break;
        }

    }


return 0;
}