Cod sursa(job #1416626)

Utilizator stanciuandreiStanciulescu Andrei stanciuandrei Data 8 aprilie 2015 16:23:17
Problema Factorial Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <iostream>
#include <fstream>
#define maxval 100
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int NmbOfZero(int i)
{
    int exp=5, zero=0;
    while(exp<i)
    {
        zero+=i/exp;
        exp*=5;
    }
    return zero;
}
int main()
{
    int p, l=1, r=maxval;
    in>>p;
    bool f=false;
    while(!f&&l<r)
    {
        int m=(l+r)/2,tmp=NmbOfZero(m);
        if(tmp==p)
        {
            while(NmbOfZero(m)==p&&m>=1)
                m--;
            out<<m+1<<"\n";
            return 0;
        }
        else
        {
            if(tmp>p)
                r=m-1;
            else
                l=m;
        }
    }
    return 0;
}