trang chủ / bài tập / beautylyr

Khổ thơ đẹp

Đề bài

Mô tả

Cho n từ, mỗi từ gồm các chữ cái latin thường và chứa ít nhất một nguyên âm. Các nguyên âm là a, e, i, o, u (chữ y không phải nguyên âm).

Bạn cần chọn một số từ trong các từ đã cho để tạo ra càng nhiều khổ thơ đẹp càng tốt.

Mỗi khổ thơ gồm đúng hai dòng, mỗi dòng gồm đúng hai từ cách nhau bởi một dấu cách. Một khổ thơ gọi là đẹp nếu thỏa mãn cả ba điều kiện sau:

  • Số nguyên âm của từ thứ nhất ở dòng một bằng số nguyên âm của từ thứ nhất ở dòng hai.
  • Số nguyên âm của từ thứ hai ở dòng một bằng số nguyên âm của từ thứ hai ở dòng hai.
  • Nguyên âm cuối cùng của dòng một trùng với nguyên âm cuối cùng của dòng hai (nguyên âm cuối của một dòng là nguyên âm xuất hiện sau cùng trong từ thứ hai của dòng đó; sau nguyên âm này có thể còn phụ âm).

Mỗi từ chỉ được dùng tối đa số lần mà nó xuất hiện trong dữ liệu vào. Ví dụ nếu một từ xuất hiện ba lần thì nó được dùng nhiều nhất ba lần.

Hãy in ra số khổ thơ đẹp lớn nhất có thể tạo được, cùng với một cách tạo tương ứng.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n là số lượng từ.
  • n dòng tiếp theo, mỗi dòng chứa một từ si gồm các chữ cái latin thường.

Dữ liệu ra

  • Dòng đầu in số nguyên m là số khổ thơ đẹp lớn nhất.
  • Trong 2m dòng tiếp theo, in m khổ thơ (mỗi khổ hai dòng).

Nếu có nhiều đáp án, in ra một đáp án bất kỳ.

Ràng buộc

  • 1n105
  • Tổng độ dài tất cả các từ không vượt quá 106.
  • Mỗi từ chứa ít nhất một nguyên âm.

Ví dụ

Input Output Giải thích
14
wow
this
is
the
first
mcdics
codeforces
round
hooray
i
am
proud
about
that
3
about proud
hooray round
wow first
this is
i that
mcdics am
Một cách tạo 3 khổ thơ đẹp. Khổ đầu: about và hooray đều có 3 nguyên âm, proud và round đều có 2 nguyên âm, nguyên âm cuối của cả hai dòng đều là u. Từ codeforces không dùng được vào khổ nào.
7
arsijo
suggested
the
idea
for
this
problem
0 Không tạo được khổ thơ đẹp nào.
4
same
same
same
differ
1
same differ
same same
same và differ đều có 2 nguyên âm và cùng kết thúc bằng nguyên âm e; từ same được dùng tối đa 3 lần.

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0