Bài 25.5. Sắp xếp Danh sách Bí danh - [Độ khó: Khá]
Bài 25.5. Sắp xếp Danh sách Bí danh - [Độ khó: Khá]
Trong một tổ chức bí mật cổ xưa, các thành viên được gán những bí danh đặc biệt. Tuy nhiên, để bảo mật, họ sử dụng một bảng chữ cái tùy chỉnh thay vì bảng chữ cái Latin thông thường. Bạn là người quản lý danh sách thành viên và cần sắp xếp các bí danh theo thứ tự từ điển của bảng chữ cái tùy chỉnh này.
INPUT FORMAT
Dòng đầu tiên chứa một chuỗi Bảng chữ cái tùy chỉnh
(custom_alphabet). Chuỗi này chứa 26 ký tự duy nhất, biểu thị thứ tự các chữ cái từ 'a' đến 'z' trong bảng chữ cái tùy chỉnh của họ.
Dòng thứ hai chứa một số nguyên N
(1 <= N <= 100), là số lượng bí danh cần sắp xếp.
N
dòng tiếp theo, mỗi dòng chứa một Bí danh
(alias).
- Mỗi
Bí danh
chỉ chứa các chữ cái viết thường (a-z) và có độ dài từ 1 đến 50 ký tự. Bảng chữ cái tùy chỉnh
luôn chứa đủ 26 chữ cái từ 'a' đến 'z' theo một thứ tự nào đó.
OUTPUT FORMAT
In ra N
dòng, mỗi dòng là một bí danh sau khi đã được sắp xếp theo thứ tự từ điển của Bảng chữ cái tùy chỉnh
.
Ví dụ:
Input:
bacdefghijklmnopqrstuvwxyz
3
apple
banana
cat
Output:
banana
cat
apple
Giải thích:
- Bảng chữ cái tùy chỉnh:
b
đứng trướca
, sau đó đếnc
,d
, v.v. - So sánh 'apple' và 'banana':
- Ký tự đầu tiên: 'a' (apple) và 'b' (banana).
- Trong bảng chữ cái tùy chỉnh, 'b' đứng trước 'a'.
- Do đó, 'banana' đứng trước 'apple'.
- So sánh 'banana' và 'cat':
- Ký tự đầu tiên: 'b' (banana) và 'c' (cat).
- Trong bảng chữ cái tùy chỉnh, 'b' đứng trước 'c'.
- Do đó, 'banana' đứng trước 'cat'.
- So sánh 'cat' và 'apple':
- Ký tự đầu tiên: 'c' (cat) và 'a' (apple).
- Trong bảng chữ cái tùy chỉnh, 'b' đứng trước 'a', sau đó đến 'c'. Như vậy 'c' đứng sau 'a'.
- Do đó, 'apple' đứng trước 'cat'.
- Kết quả sắp xếp:
banana
,cat
,apple
.
Ví dụ 2 (Edge Case - tiền tố): Input:
abcdefghijklmnopqrstuvwxyz
3
apple
app
apply
Output:
app
apple
apply
Giải thích:
- Bảng chữ cái tùy chỉnh: Là bảng chữ cái tiếng Anh thông thường.
- So sánh 'apple', 'app', 'apply':
- 'app' là tiền tố của 'apple' và 'apply'. Theo quy tắc từ điển, tiền tố đứng trước chuỗi dài hơn.
- So sánh 'apple' và 'apply': Đến ký tự thứ 4, 'l' (apple) và 'y' (apply). 'l' đứng trước 'y'.
- Kết quả sắp xếp:
app
,apple
,apply
.
Comments