Cod sursa(job #2986552)

Utilizator AntonioNituAntonio Nitu AntonioNitu Data 28 februarie 2023 19:15:06
Problema Factorial Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <bits/stdc++.h>

using namespace std;

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

int p;

int zerocount(int n)
{
    int cp=5;
    int res=0;
    while(n>=cp)
    {
        res+=n/cp;
        cp*=5;
    }
    return res;
}

int bs(int st,int dr)
{
    while(st<dr)
    {
        int mid=dr-(dr-st)/2;
        if(zerocount(mid)==p)
            return mid;

        else if(zerocount(mid)<p)
            st=mid+1;

        else if(zerocount(mid)>p)
            dr=mid-1;
    }
}

int main()
{
    in>>p;
    int mid=bs(1,1000000000);
    while(zerocount(mid)==p && mid>=1)
        mid--;
    out<<mid+1;
}