Cod sursa(job #1861066)

Utilizator AlexTufisTufis Alexandru AlexTufis Data 28 ianuarie 2017 15:53:17
Problema Factorial Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include<iostream>
#include<fstream>
using namespace std;
    ifstream f("fact.in");
    ofstream g("fact.out");
    long long p,n;
    int zero(long long q)
    {
        long long sum=0,p=5;
        while(p<=q)
        {
            sum+=(q/p);
            p*=5;
        }
        return sum;
    }
    long long cautare(long long s,long long d)
    {
        long long m,nr0;
        if(s<=d)
            {
         m=(s+d)/2;
         nr0=zero(m);
        if(nr0<p)
            return cautare(m+1,d);
            if(nr0>p)
            return cautare(s,m-1);
            return m-(m%5);
        }
        return -1;
    }
        int main()
        {
            f>>p;
            if(p==0)
                g<<1;
            else
            {
                n=cautare(1,100000000);
                g<<n;
            }
            return 0;
        }