Cod sursa(job #2039368)

Utilizator GVolterMatamare GVolter Data 14 octombrie 2017 14:54:07
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    ifstream in("fact.in");
    ofstream out("fact.out");
    int x,N,mijl,p,st,dr;
    in>>p;
    if (p==0)
    {
        out<<1;
        return 0;
    }
    st=1; dr=800000000;
    while(st<=dr && N!=p )
    {
        N=0;
        mijl=(st+dr)/2;
        x=mijl/5;
        while (x)
        {
            N+=x;
            x/=5;
        }
        if(N>p)
        {
            dr=mijl-1;
        }
        else
        {
            st=mijl+1;
        }
    }
    if(st<=dr)
        out<<mijl-mijl%5;
    else
        out<<-1;

    return 0;
}