Cod sursa(job #1149368)

Utilizator radu_cebotariRadu Cebotari radu_cebotari Data 21 martie 2014 18:58:01
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<fstream>
using namespace std;

int nr_zero(int n)
{

    int p =5,rez=0;
    while(n>=p)
    {
        rez+=n/p;
        p*=5;
    }
    return rez;
}

int bin_serch(int left,int right,int val)
{
    int mid;
    while(left<right)
        {

            mid = left + (right-left)/2;
            if(val<=nr_zero(mid)) right = mid;
            else left = mid+1;
        }
        return right;
}

int main()
{

    int n,p;
    ifstream in("fact.in");
    ofstream out("fact.out");
    in>>n;
    p = bin_serch(1,n*10,n);
    if(nr_zero(p) == n) out<<p;
    else out<<-1;
    return 0;
}