Cod sursa(job #876167)

Utilizator XeBluePodaru Mihai XeBlue Data 11 februarie 2013 14:37:46
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
long long cinci(long long nr)
{
    long long w=0;
    for(long long k=5;k<=nr;k*=5)
        w+=nr/k;
    return w;
}
int main()
{
    long long  n, i=1, k, inf=20000000000;
    in >> n;
    if(n==0)
    {
        out << 1;
        return 0;
    }
    while(i<inf)
    {
        long long m=(i+inf)/2;
        long long g=cinci(m);
        if(n<=g)
            inf=m;
        else
            i=m+1;
    }
    if(cinci(i)==n)
        out << i;
    else
        out << "-1";
    in.close();
    out.close();
    return 0;
}