Cod sursa(job #1953391)

Utilizator VladTZYVlad Tiganila VladTZY Data 4 aprilie 2017 19:49:40
Problema Factorial Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
unsigned long long int l=1,r=500000000,n,mij,x,p,sol;
int test(int x)
{
    int z=5,t=0;
    while(x/z)
    {
        t=t+x/z;
        z=z*5;
    }
    return t;
}
int binar()
{
    int l=1,r=500000000,sol,mij;
     while(l<=r)
        {
            mij=(l+r)/2;
            if(test(mij)==p)
            {
                sol=mij;
                return sol;
            }
            else
                if(test(mij)<p)
                    l=mij+1;
                else
                    r=mij-1;
        }
}
int main()
{
    f>>p;
    if(p==1)
        g<<"1";
    else
    {
        if(binar()=='0')
            g<<"-1";
        else
            if(binar>0)
                g<<binar()-binar()%5;
    }
}