Cod sursa(job #1977550)

Utilizator miruna999Morarasu Miruna miruna999 Data 5 mai 2017 14:45:50
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
unsigned long p,st,dr=ULONG_MAX,m,nrz,nr;

unsigned long zero(unsigned long x)
{
    nr=0;
    while(x)
        nr+=(x/5),x/=5;
    return nr;
}

unsigned long caut_binar()
{
    while(st<=dr)
    {
        m=(st+dr)/2;
        nrz=zero(m);
        if(nrz==p)
            return m/5*5;
        else
        if(nrz>p)
            dr=m-1;
        else
            st=m+1;
    }
    return -1;
}

int main()
{
    f>>p;
    if(p==0)
        g<<1;
    else
        g<<caut_binar();
    return 0;
}