Cod sursa(job #2936378)

Utilizator AlexandruCorneaCornea Alexandru Mihai AlexandruCornea Data 8 noiembrie 2022 19:02:33
Problema Factorial Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

using namespace std;
ifstream fin ("fact.in");
ofstream fout ("fact.out");
long long zero(long long n)
{
   long long p,s;
    p=5;
    s=0;
    while(p<=n){
        s+=n/p;
        p*=5;}
        return s;
}
int main()
{
    int x;
    fin>>x;
    long long st=1,dr=5*x,poz;
    if (x==0)
    {
        fout<<1;
        return 0;
    }
    while (st<=dr)
    {
        long long mij=(st+dr)/2;
        long long zmij=zero(mij);
        if (zmij==x)
        {
            poz=mij;
        }
        if (zmij<x)
            st=mij+1;
            else
           dr=mij-1;
    }
fout<<poz;
    return 0;
}