Cod sursa(job #1364524)

Utilizator adrianbrabeteBrabete Adrian adrianbrabete Data 27 februarie 2015 18:24:14
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int main()
{
    int n,p,ls,ld,a,b,x;
    f>>p;
    ls=5;
    ld=400000015;
    a=0;
    if(p==0)
    {
        x=1;
        g<<x;
    }
    else
    {
        while(ls<=ld && a==0)
        {
            n=(ls+ld)/2;
            x=0;
            b=5;
            while(b<=n)
            {
                x=x+n/b;
                b=b*5;
            }
            if(x==p)
            {
                g<<(n/5)*5;
                a=1;
            }
            else if(x<p)
                ls=n+1;
            else
                ld=n-1;
        }
        if(a==0)
            g<<"-1";
    }
}