Cod sursa(job #1737457)

Utilizator florin.moldovanuFlorin M florin.moldovanu Data 4 august 2016 10:08:18
Problema Factorial Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int zero(int x)
{
    int nr=0,q;
    q=5;
   while(q<=x)
   {
       nr=nr+x/q;
       q=q*5;
   }
    return nr;
}
int cb(int i, long j, int p)
{
    int m;   int x;
    while(i<j)
    {
        m=(i+j)/2;

        x=zero(m);
        if(x==p)
        { while(m%5!=0)
           m--;
            return m;
        }
        else
            if(x<p)
             i=m+1;
        else
            j=m-1;
    }
    return -1;
}

int main()
{
    long p, nr=0, i,x;
    fin>>p;
    if(p==0)
    {
    fout<<1;
    return 0;
    }
    fout<<cb(0,100000000,p);
    return 0;
}