Thơ lục bát

Xem dạng PDF

Gửi bài giải

Điểm: 0,80 (OI)
Giới hạn thời gian: 3.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

To read the problem statement in English, choose the language using the flag on the navigation bar.

Lục bát là một thể thơ của Việt Nam, đúng như tên gọi, một cặp câu thơ cơ bản gồm một câu sáu âm tiết và một câu tám âm tiết, phối vần với nhau. Một bài thơ lục bát gồm nhiều cặp câu tạo thành và không hạn chế số câu. Thơ lục bát là thể loại thơ rất phổ biến do có luật thơ rất đơn giản nhưng rất dễ gợi nhớ.

Cụ thể hơn, trong bài toán này ta định nghĩa một bài thơ lục bát như sau.

  • Bài thơ lục bát sẽ có ~2 \cdot n~ câu thơ, trong đó có ~n~ câu lục vần (câu có 6 tiếng) và ~n~ câu bát vần (câu có 8 tiếng).

  • Các câu lục vần sẽ là các câu ở vị trí đầu tiên, thứ 3, thứ 5, ~\ldots~

  • Các câu bát vần sẽ là các câu ở vị trí thứ 2, thứ 4, thứ 6, ~\ldots~

  • Câu trước cần có tiếng cuối vần với tiếng thứ sáu của câu tiếp theo.

  • Hai từ được gọi là vần nhau nếu như multiset của các nguyên âm (tức các kí tự a, e, i, ou) của hai từ đó là như nhau.

Cho ~n~ câu thơ lục vần và ~n~ câu thơ bát vần, hãy tìm cách sắp xếp lại các câu thơ này để các câu thơ trở thành một bài thơ lục bát.

Input

Dòng đầu tiên chứa số nguyên ~n~ (~1 \le n \le 10^5~) là số lượng câu lục vần và bát vần trong bài thơ.

Dòng thứ ~i~ trong ~n~ dòng tiếp theo chứa ~6~ từ của một câu thơ lục vần.

Dòng thứ ~i~ trong ~n~ dòng tiếp theo chứa ~8~ từ của một câu thơ bát vần.

Mỗi từ trong input chỉ bao gồm các kí tự tiếng anh in thường. Tổng độ dài của tất cả các từ không quá ~10^7~.

Output

Nếu như ~2n~ câu thơ đã cho không thể tọa ra thành một bài thơ lục bát bằng cách sắp xếp lại các câu, hãy in ra một dòng duy nhất chứa NO.

Ngược lại, dòng đầu tiên hãy in ra YES. Tiếp đó hãy in ~2n~ dòng tiếp theo thể hiện bài thơ đã thu được.

Scoring

  • Subtask 1, tương ứng với ~10~ điểm, có ~n \le 6~.

  • Subtask 2, tương ứng với ~90~ điểm, không có ràng buộc gì thêm.

Tổng cộng bài toán sẽ có ~100~ điểm.

Sample Input 1

2
nhi vang bong trang la xanh
trong dam gi dep bang sen
gan bun ma chang hoi tanh mui bun
la xanh bong trang lai chen nhi vang

Sample Output 1

YES
trong dam gi dep bang sen 
la xanh bong trang lai chen nhi vang 
nhi vang bong trang la xanh 
gan bun ma chang hoi tanh mui bun

Sample Input 2

3
trai qua mot cuoc be dau
la gi bi sac tu phong
tram nam trong coi nguoi ta
troi xanh quen thoi ma hong danh ghen
chu tai chu menh kheo la ghet nhau
nhung dieu trong thay ma dau don long

Sample Output 2

YES
tram nam trong coi nguoi ta 
chu tai chu menh kheo la ghet nhau 
trai qua mot cuoc be dau 
nhung dieu trong thay ma dau don long 
la gi bi sac tu phong 
troi xanh quen thoi ma hong danh ghen

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.