COCI-17 (2017) - Γύρος #2 - 2 (ZigZag)

View as PDF

Submit solution

Points: 35 (partial)
Time limit: 2.0s
Memory limit: 64M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal, Python
ZigZag

Ο Zig και ο Zag παίζουν ένα παιχνίδι λέξεων. Ο Zig λέει ένα γράμμα και ο Zag λέει μια λέξη που ξεκινά με αυτό το γράμμα. Ωστόσο, η λέξη πρέπει να είναι από τη λίστα επιτρεπόμενων λέξεων και τέτοια ώστε ο Zag να την έχει ήδη πει τις λιγότερες φορές. Αν η επιλεγώμενη λέξη είναι διφορούμενη, τότε ο Zag θα επιλέξει αυτή που είναι λεξικογραφικά μικρότερη (νωρίτερα στο αλφάβητο). Για κάθε γράμμα Zig, θα είναι δυνατό να επιλέξετε μια λέξη.
Ας υπάρχει μια λίστα που αποτελείται από ακριβώς K διακριτές λέξεις και μια σειρά από N γράμματα που έχει δώσει το Zig. Γράψτε ένα πρόγραμμα που, με βάση την είσοδο, θα εξάγει έναν πίνακα από N λέξεις που είπε ο Zag κατά τη διάρκεια του παιχνιδιού.

Είσοδος

Η πρώτη γραμμή εισόδου περιέχει θετικούς ακέραιους αριθμούς ​K\;(1 \le K \le 100\,000) και N\;(1 \le N \le 100\,000) από την περιγραφή εργασίας.
Κάθε μία από τις ακόλουθες K γραμμές περιέχει μια λέξη που αποτελείται από πεζά γράμματα του αγγλικού αλφαβήτου που δεν υπερβαίνει τους 21 χαρακτήρες.
Κάθε μία από τις ακόλουθες N γραμμές περιέχει ένα μόνο πεζό γράμμα του αγγλικού αλφαβήτου.

Έξοδος

Πρέπει να τυπώσετε N γραμμές, καθεμία από τις οποίες να περιέχει μια μόνο λέξη από την περιγραφή εργασίας.

Βαθμολογία

Σε δοκιμαστικές περιπτώσεις που αξίζουν το 60% των συνολικών πόντων, θα ισχύει ότι το N και το K είναι μικρότερα από 500.

Παραδείγματα

input

4 5
zagreb
split
zadar
sisak
z
s
s
z
z

output

zadar
sisak
split
zagreb
zadar

input

5 3
london
rim
pariz
moskva
sarajevo
p
r
p

output

pariz
rim
pariz

input

1 3
zagreb
z
z
z

output

zagreb
zagreb
zagreb

Comments

There are no comments at the moment.