Cod sursa(job #2156404)

Utilizator radugheoRadu Mihai Gheorghe radugheo Data 8 martie 2018 18:25:45
Problema Factorial Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>

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

int nrZero(int n) {
    int nr = 0;
    while (n > 0) {
        nr = nr + n/5;
        n/=5;
    }
    return nr;
}

int p, i, st, dr, mid, n, t;
int main()
{
    fin >> p;
    n=100000000;
    st = 1;
    dr = n;
    while(st <= dr){
        mid = (st + dr)/2;
        if(nrZero(mid) >= p) {
            t = mid;
            dr = mid - 1;
        }
        else
            st = mid + 1;
    }
    if (nrZero(t) == p)
        fout << t;
    else
        fout << -1;
    return 0;
}