Cod sursa(job #2544918)

Utilizator dvp123Pescariu David dvp123 Data 12 februarie 2020 17:47:39
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <bits/stdc++.h>
using namespace std;

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

int de0(int n){
    int nr = 0, p = 5;

    while(p <= n){
        nr += n / p;
        p *= 5;
    }

    return nr;
}

int main()
{
    int p;
    fin >> p;


    int st = 0, dr = 2000000000;
    int rez = -1, mid;

    while(st <= dr){
        mid = (st + dr) / 2;

        if(de0(mid) == p){
            rez = mid;
        }

        if(de0(mid) >= p){
            dr = mid - 1;
        }else {
            st = mid + 1;
        }
    }
    if(rez == 0) fout << 1;
    else fout << rez;

}