V danem naravnem številu je zadnja neničelna števka najbolj desna neničelna števka v desetiškem zapisu števila. Na primer, zadnja neničelna števka števila 123 je 3, pri številu 45600 je to 6, pri številu 100 pa 1.
Napiši funkcijo, ki za vsako števko od 1 do 9 ugotovi, kolikokrat se pojavi kot zadnja neničelna števka v zaporedju M,M + 1,M + 2, . . . ,N − 2,N − 1,N.
Funkcija naj zapiše rezultat v tabelo tipa int[9]. Na primer, če je M = 118 in N = 122, pomeni, da obravnavamo zaporedje 118, 119, 120, 121, 122. Zadnje neničelne števke so 8, 9, 2, 1 in 2. Torej mora tabela vsebovati elemente 1, 2, 0, 0, 0, 0, 0, 1, 1, ker enica, osmica in devetka nastopajo kot zadnja neničelna števka enkrat, dvojka pa dvakrat.
Pozor: Razlika med številoma N in M je lahko tako velika, da je bolje, če ne obravnavamo vsakega števila med M in N posebej, ker bi podprogram predolgo tekel. Tvoja podprogram naj bo učinkovit!
OPIS PROBLEMA
Podano je zaporedje števil. Prešteti je potrebno vse zadnje neničelne števke v zaporedju. Na koncu vrnemo tablo števil velikosti 9. V tabeli mora biti število ponovitev števil od 1 do 9 kot zadnje neničelne števke.
IDEJA REŠITVE
Najprej ustvarimo dve tabeli velikosti 9, v katerih se bo beležilo število ponovitev. V prvi tabeli bomo dobili število ponovitev števil od 1 do 9 na zadnjih mestih, za števila od 1 do m. Pri čemer m predstavlja zgornjo mejo intervala. V drugi tabeli pa bomo dobili število ponovitev števil od 1 do 9 na zadnjih mestih, za števila od 1 do n-1. Pri čemer je n-1 število, ki je predhodnik števila, ki predstavlja spodnjo mejo intervala. Najprej bomo ustreznokrat povečali števila pri deljenju z 10 (tolikokrat se zaporedje od 1 do 9 ponovi). Nato bomo poskrbeli še za ostanke pri deljenju z 10. Pri ostankih bomo ustreznokrat povečali števila v prvi oziroma drugi tabeli do indeksa, ki ga predstavlja ostanek pri deljenju z 10.


