2000 - ĐẢO CHỮ CÁI (DÀNH CHO HỌC SINH THCS VÀ THPT)BẠN PHẢI VIẾ...

Bài 46/2000 - Đảo chữ cái

(Dành cho học sinh THCS và THPT)

Bạn phải viết chương trình đưa ra tất cả các từ có thể có phát sinh từ một tập các chữ cái.

Ví dụ: Cho từ “abc”, chương trình của bạn phải đưa ra được các từ " abc", "acb", "bac", "bca", "cab" và

"cba" (bằng cách khảo sát tất cả các trường hợp khác nhau của tổ hợp ba chữ cái đã cho).

Input

Dữ liệu vào được cho trong tệp input.txt chứa một số từ. Dòng đầu tiên là một số tự nhiên cho biết số từ

được cho ở dưới. Mỗi dòng tiếp theo chứa một từ. Trong đó, một từ có thể chứa cả chữ cái thường hoặc hoa

từ A đến Z. Các chữ thường và hoa được coi như là khác nhau. Một chữ cái nào đó có thể xuất hiện nhiều

hơn một lần.

Output

Với mỗi từ đã cho trong file Input.txt, kết quả nhận được ra file Output.txt phải chứa tất cả các từ khác nhau

được sinh từ các chữ cái của từ đó. Các từ được sinh ra từ một từ đã cho phải được đưa ra theo thứ tự tăng

dần của bảng chữ cái.

Sample Input

2

abc

acba

Sample Output

acb

bac

bca

cab

cba

aabc

aacb

abac

abca

acab

baac

baca

bcaa

caab

caba

cbaa