VNOI Marathon 08

Từ tập các bài có trên SPOJ (divb)

2904. Tribe

Mã bài: TRIBE

Bộ lạc

Ngôn ngữ của một bộ lạc cổ xưa chỉ sử dụng hai chữ cái ab ðể tạo ra các từ có nghĩa. Ðể tạo thành một câu, người ta sử dụng thêm dấu cách ðể phân tách các từ. Như vậy mỗi dãy các ký tự ab liên tiếp nhau và không thể mở rộng ðược về hai bên sẽ tạo thành một từ. Một câu không thể chứa từ vô nghĩa. Người trong bộ lạc quan niệm mỗi từ có một giá trị may mắn. Giá trị may mắn của một câu là tổng giá trị may mắn của các từ trong câu. Bạn ðược sử dụng tối ða x ký tự a, y ký tự bz dấu cách, hãy tạo ra câu có trọng số lớn nhất. Trong trường hợp có nhiều kết quả, hãy in ra câu có thứ tự từ ðiển nhỏ nhất.

Input

  • Dòng ðầu ghi số N, số từ có nghĩa trong ngôn ngữ.(1 ≤ N ≤ 50)
  • Dòng sau ghi 3 số x, y, z như trong ðề bài.( 0 ≤ x, y, z ≤ 50)
  • N dòng sau, mỗi dòng ghi một từ thuộc ngôn ngữ và giá trị của nó, cách nhau bởi một dấu cách. Giá trị của một từ là một số nguyên dương không vượt quá 50.

Output

Gồm một dòng duy nhất ghi ra câu có thứ tự từ ðiển nhỏ nhất tìm ðược.

Example

Input:
4
3 3 1
abb 3
baa 3
aaa 4
bbb 1

Output:
abb baa

Chú ý

  • Câu s1 ðược gọi là có thứ tự từ ðiển nhỏ hơn s2 nếu xâu biểu diễn s1 nhỏ hơn s2. Thứ tự từ ðiển của các ký tự là: dấu cách, a, b.

Được gửi lên bởi:VOJ Team
Ngày:2008-08-01
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Ngôn ngữ cho phép:Tất cả ngoại trừ: AWK C++ 4.3.2 CLOJ ERL F# GO JS PERL 6 PYTH 3.1.2 SCALA SED TCL
Nguồn bài:VNOI Marathon '08 - Round 7/DivB
Problem Setter: Khúc Anh Tuấn

SPOJ System © 2012 Sphere Research Labs | Projekty informatyczne i aplikacje na zamówienie. All Rights Reserved.