Cod sursa(job #1501781)

Utilizator mihaitheodorMihai Theodor Iliant mihaitheodor Data 13 octombrie 2015 20:34:10
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include<fstream>
using namespace std;


long long k,p,u;

long long zero(long long n) //functia Legendre
{
    long long p=5,s=0;
    while(p<=n)
    {
        s+=n/p;
        p *= 5;
    }
        return s;
}

int main()
{
    ifstream fin("fact.in");
    ofstream fout("fact.out");
    fin>>k;
    p=1;u=5*k;
    
    while(p<=u)
    {
        long long mid=(u+p)/2;
        if(zero(mid)>=k)
            u=mid-1;
        else
            p=mid+1;
    }
    
    if(zero(p)==k)
        fout<<p;
    else
        fout<<-1;
    
    return 0;
}