Imenik


Submit solution

Points: 70 (partial)
Time limit: 5.0s
Memory limit: 32M

Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Perl, Python

Županijsko natjecanje 2014. / Osnovna škola (7. razred) - 2. zadatak

Jedan od načina na koji mobitelom možemo nazvati neki telefonski broj jest da taj broj utipkamo znamenku po znamenku te pritisnemo odgovarajuću tipku za poziv. današnji pametni mobiteli u takvoj situaciji imaju jednu korisnu opciju. nakon svake upisane znamenke oni prikazuju sve brojeve zapisane u telefonskom imeniku koji počinju istim slijedom znamenki koje smo do tada utipkali. npr:

imenik

Ako su zadani svi telefonski brojevi zapisani u imeniku te broj koji želimo nazvati, napiši program koji će odrediti i ispisati koliko se brojeva iz imenika prikazalo nakon svake upisane znamenke broja kojeg želimo nazvati.

Napomena: U imeniku mogu biti međusobno jednaki brojevi. U tom slučaju, svaki se gleda kao zaseban broj.

Ulazni podaci

U prvom retku nalazi se prirodan broj \(B\) \((100000 \leq B \leq 999999)\), broj koji želimo nazvati.

U drugom retku nalazi se prirodan broj \(N\) \((1 \leq N \leq 10)\), broj telefonskih brojeva u imeniku.

U sljedećih \(N\) redaka nalazi se po jedan prirodan broj \(TB_i (100000 \leq TB_i \leq 999999, i=1 \ldots N)\), \(i\)-ti telefonski broj u imeniku.

Izlazni podaci

U prvi redak treba ispisati traženi broj brojeva iz imenika nakon što se upiše prva znamenka broja \(B\), u drugi redak traženi broj brojeva nakon što se upiše druga znamenka, u treći za treću znamenku, u četvrti za četvrtu, peti za petu i u šesti redak broj prikazanih brojeva nakon upisane šeste znamenke.

Bodovanje

Svaka točno ispisana vrijednost koja se nalazi u svom retku vrijedi jedan bod.

Primjeri test podataka

Ulaz
231456
3
237652
245567
100040
Izlaz
2
1
0
0
0
0

Ulaz
985644
5
132457
985644
234321
789432
999999
Izlaz
2
1
1
1
1
1

Ulaz
325643
10
234156
453256
325219
754309
218975
325643
421895
423900
327896
326100
Izlaz
4
4
2
1
1
1

Comments

There are no comments at the moment.