Cod sursa(job #2269654)

Utilizator mihaistamatescuMihai Stamatescu mihaistamatescu Data 26 octombrie 2018 12:37:38
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream>
using namespace std;
int n,a,zero,aux, p;

int getZero(int a) {
    /// cati de 0 sunt la finalul lui a!

    int p = 5;
    int zero = 0;
    while (p <= a) {
        zero += a / p;
        p *= 5;
    }
    return zero;

}

int main () {
    ifstream fin ("fact.in");
    ofstream fout ("fact.out");
    fin>>n;

    int st = 1, dr = 5*n;

    while (st <= dr) {
        /// calculez cate zerouri are in coara a!

        a = (st + dr)/2;


        if (getZero(a) >= n)
            dr = a-1;
        else
            st = a+1;

    }

    if (getZero(st) == n)
        fout<<st;
    else
        fout<<-1;
    return 0;
}