fbpx

Problema #37 – ZeroFact – Rezolvari PBInfo

de Mihai-Alexandru

Cerinţa

Scrieți definiția completă a unui subprogram C++, nz, cu un parametru întreg n, care returnează numărul zerourilor de la sfârşitul numărului n!

Restricţii şi precizări

  • numele subprogramului va fi nz
  • 0<n<1.000.000.000

Exemplu

Dacă n=12, nz(n)=2, deoarece 12! se termină cu două cifre zero.

Important

Soluţia propusă va conţine doar definiţia funcţiei cerute. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.

int nz(int n){
    int cnt5 = 0, cnt2 = 0;
    int put2 = 2, put5 = 5;
    while(put2 < n){
        cnt2 += n / put2;
        put2 *= 2;
    }
    while(put5 < n){
        cnt5 += n / put5;
        put5 *= 5;
    }
    return cnt5;
}
Comentarii

S-ar putea sa iti placa