Cod sursa(job #2216672)

Utilizator Ioana_GaborGabor Ioana Ioana_Gabor Data 27 iunie 2018 16:42:38
Problema Factorial Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb

#include <iostream>
#include <fstream>

using namespace std;

int nr_de_5(int n) {
    int rez=0;
    while(n%5==0){
        rez++;
        n=n/5;
    }
    return rez;
}

int nr_de_5_pana_la_n_factorial(int n) {
    int k=5,contor=0;
    while(k<=n) {
        contor=contor+n/k;
        k=k*5;
    }
    return contor;
}

int main() {
    ifstream f("fact.in");
    ofstream g("fact.out");
    int p;
    f>>p;
    if(p==0) {
        g<<1;
    }else{
        int i=5*p,rez=nr_de_5_pana_la_n_factorial(i);
        while(rez>p) {
            rez=rez-nr_de_5(i);
            i=i-5;
        }
        if(p==rez){
            g<<i;
        }else{
            g<<-1;
        }
    }
    f.close();
    g.close();
}