Cod sursa(job #1435101)

Utilizator ducu34Albastroiu Radu Gabriel ducu34 Data 12 mai 2015 08:50:36
Problema Factorial Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long i,a,b,mij,x,p,v[15];
long long nrzerouri(long long k)
{
    long long nr=0;
    for(long long j=1;j<=11;j++)
        nr=nr+k/v[j];
    return nr;
}
int main()
{
    fin>>p;
    if(p==0)
    {
        fout<<1;
        return 0;
    }
    if(p<0)
    {
        fout<<-1;
        return 0;
    }
    v[0]=1;
    for(i=1;i<=11;i++)
        v[i]=v[i-1]*5;
    a=0;b=100000000000;
    while(a!=b)
    {
        mij=(a+b)/2;
        if(nrzerouri(mij)>=p)
            b=mij;
        else
            a=mij+1;
    }
    if(nrzerouri(a)!=p)
    {
        fout<<-1;
        return 0;
    }
    fout<<a;
    return 0;
}