Cod sursa(job #1423740)

Utilizator zacuscaAlex Iordache zacusca Data 22 aprilie 2015 14:52:14
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int p,n,sol;
int nr0(int x)
{
    int cnt=0;
    int p=5;
    while(p<=x)
    {
        cnt+=x/p;
        p*=5;
    }
    return cnt;
}
int main()
{
    in>>p;
    int st=1,dr=5*p;
    if(!p)out<<"1\n";
    else
    {
        while(st<=dr)
        {
            int m=(dr+st)/2;
            int aux=nr0(m);
            if(aux>p)
                dr=m-1;
            else if(aux<p)
                st=m+1;
            else
            {
                sol=m;
                dr=m-1;
            }
        }
        out<<sol<<'\n';
    }
    out.close();
    return 0;
}