Cod sursa(job #2783509)

Utilizator vladroatisRoatis Vlad vladroatis Data 14 octombrie 2021 16:42:31
Problema Factorial Scor 95
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int nz(int n)
{
    int s=0,p=5;
    while(p<=n)
    {
        s=s+n/p;
        p=p*5;
    }

    return s;
}
int main()
{
    int st=1,ok=0,p;
    int dr=1000000000;
    int mij;
    fin>>p;
    while(st<dr&&ok==0)
    {
        mij=(st+dr)/2;
        if(p==nz(mij))
        {
            ok=1;
            fout<<mij-mij%5;
        }else if(nz(mij)<p)
        {
            st=mij+1;
        }else dr=mij-1;
    }
    if(ok==0)
    {
        fout<<-1;
    }

    return 0;
}