Cod sursa(job #2420336)

Utilizator RazvanucuPopan Razvan Calin Razvanucu Data 11 mai 2019 16:00:48
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <iostream>
#include <fstream>
#define NMax 100000000
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int d,s=1,m,p,x=-1,i;
bool ok=1;
long k;
int zr(int n)
{
    int nr=0;

    for(i=5; i<=n; i*=5)
        nr+=n/i;

    return nr;
}
int main()
{
    f>>p;
    if(p==0)
        g<<"1";
    else
    {
        d=p*5;
        while(ok)
        {
            if(s<=d)
            {
                m=s+(d-s)/2;

                k=zr(m);

                if(k==p)
                {
                    x=m;
                    d=m-1;
                }
                else
                {
                    if(k>p)
                        d=m-1;
                    else
                        s=m+1;
                }
            }
            else
                g<<x,ok=0;

        }
    }

    return 0;
}