Cậu bé Zeljko đang đọc những bức thư cũ của bà mình trên gác mái và bắt gặp một từ có độ dài ~N~. Thật không may, cậu không thể hiểu từ này là gì vì nó bị dính mực.
Cậu bé đã viết lại từ này trên một tờ giấy bằng cách thay thế từng chữ cái trong số ~M~ chữ cái không đọc được bằng ký tự #
. Cậu đưa mảnh giấy cho bà mình và bà đưa ra cho cậu ~K~ khả năng khác nhau cho mỗi chữ cái không đọc được. Sau đó, Zeljko viết tất cả các từ có khả năng vào một cuốn sổ và quyết định xem xét kỹ các tính chất của chúng để xác định đâu là từ gốc. Sau khi nhìn thấy những từ được ghi trong sổ tay, bà của cậu nhận ra rằng từ họ đang tìm là từ thứ ~X~ theo thứ tự bảng chữ cái. Zeljko không giỏi bảng chữ cái vì cậu bé đã bị ốm vào ngày học chúng ở trường. Vì vậy cậu muốn nhờ bạn giúp đỡ để xác định từ gốc.
Input
Dòng đầu tiên chứa các số nguyên ~N~, ~M~, ~K~ và ~X~ ~(1 \le N \le 500,\: 1 \le M \le N,\: 1 \le K \le 26,\: 1 \le X \le 10^9)~.
Dòng thứ hai chứa từ có độ dài ~N~ mà Zeljko đã viết trên mảnh giấy, bao gồm các chữ cái viết thường của bảng chữ cái tiếng Anh và ký tự
#
.~M~ dòng sau, dòng thứ ~i~ chứa một chuỗi ký tự độ dài ~K~, biểu diễn các chữ cái mà bà đã gợi ý để thay thế cho chữ cái thứ ~i~ không đọc được
~X~ sẽ luôn nhỏ hơn hoặc bằng tổng số từ có thể tạo ra.
Output
In ra một dòng duy nhất là từ thứ ~X~ theo thứ tự bảng chữ cái.
Sample 1
Input
9 2 3 7
po#olje#i
sol
znu
Output
posoljeni
Giải thích:
Các từ có khả năng, theo thứ tự bảng chữ cái, là: pololjeni
, pololjeui
, pololjezi
, poooljeni
, poooljeui
, poooljezi
, posoljeni
, posoljeui
, posoljezi
.
Sample 2
Input
4 1 2 2
#rak
zm
Output
zrak
Scoring
- ~3~ test đầu có ~M = 1, K = 3~.
- ~3~ test tiếp theo có ~M = 1~.
- ~4~ test còn lại không có ràng buộc gì thêm.
Comments