Cod sursa(job #2502358)

Utilizator Ionut10Floristean Ioan Ionut10 Data 30 noiembrie 2019 18:43:32
Problema Factorial Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream>

using namespace std;

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

int p;
int st, dr;

int nr_0(int x)
{
    int nr = 0;
    for(int i = 5;i <= x;i += 5)
    {
        int a = i;
        while(a % 5 == 0)
        {
            nr++;
            a /= 5;
        }
    }
    return nr;
}
int main()
{
    fin>>p;
    if(p == 0)
    {
        fout<<1;
        return 0;
    }
    st = 5; dr = 10e8;
    while(st <= dr)
    {
        int mij = st + (dr - st) / 2;
        if(nr_0(mij) == p)
        {
            fout<<(int)(mij / 5) * 5;
            return 0;
        }
        else if(nr_0(mij) < p)
                st = mij + 1;
             else dr = mij - 1;
    }
    return 0;
}