Cod sursa(job #2299732)

Utilizator bananamandaoneTudor Cosmin Oanea bananamandaone Data 9 decembrie 2018 22:22:54
Problema Factorial Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("fact.in");
ofstream fout("fact.out");

int p;

int NrZero(int n)
{
    int nrz,putere;
    nrz = 0;
    putere = 1;
    while(n >= putere)
    {
        putere *= 5;
        nrz += n / putere;
    }
    return nrz;
}

int CautBin()
{
    int mij,st,dr,nrz,poz;
    st = 1;
    dr = 1000000000;
    while(st <= dr)
    {
        mij = st + (dr - st) / 2;
        nrz = NrZero(mij);
        if(nrz == p)
        {
            poz = mij;
            dr = mij - 1;
        }
        else if(nrz > p) dr = mij - 1;
             else st = mij + 1;
    }
    return poz;
}

int main()
{
    fin>>p;
    fout<<CautBin()<<"\n";

    fin.close();
    fout.close();
    return 0;
}