Cod sursa(job #2548266)

Utilizator bem.andreiIceman bem.andrei Data 16 februarie 2020 14:11:58
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream r("fact.in");
ofstream w("fact.out");
int z;
long long nrzero(long long n)
{
    long long put=5,cnt=0;
    while(n/put)
    {
        cnt+=n/put;
        put*=5;
    }
    return cnt;
}
long long cautbin(long long n)
{
    int st=1, dr=2000000000, mij, p=1;
    while (st <= dr)
    {
        mij = (st + dr) / 2;
        if (nrzero(mij)>=z)
        {
            p=mij;
            dr = mij - 1;
        }
        else
        {
            st = mij + 1;
        }
    }
    if(nrzero(p)==z)
    {
        return p;
    }
    else
    {
        return -1;
    }
}
int main()
{
    r>>z;
    w<<cautbin(z);
    return 0;
}