Cod sursa(job #831907)

Utilizator cosmins97Sacaci Cosmin cosmins97 Data 9 decembrie 2012 14:21:32
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <climits>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int main()
{
    int p,m,i=1,j=LONG_MAX,ok=0,x,k;
    fin>>p;
    if(p==0)fout<<"1";
    while(i<=j&&ok==0)
        {
            m=(i+j)/2;
            x=5;k=0;
            while(x<=m)
                {
                    k=k+m/x;
                    x=x*5;
                }
            if(k==p)ok=1;
            else if(k>p)j=m-1;
                    else i=m+1;
        }
    if(ok==0)fout<<"-1";
    else
        {
            while(m%5!=0)m--;
            fout<<m;
        }
    fin.close();
    fout.close();
    return 0;
}