3049 Securing the Barn

Last-modified: 2012-10-25 (木) 01:07:35

原文


時間制限:1000ミリ秒
メモリ制限:65536KB

問題

農夫ジョンは新しいセキュリティシステムを牛小屋に設置しました。ジョンは草場にいる牛たちに有効なパスワードを発行しなければなりません。
有効なパスワードというのは互いに異なるL(3 <= L <= 15)文字の小文字からなり(通常の'a'..'z' のラテン文字セットです)、少なくとも1文字の母音(a,e,i,o,u)と2文字の非母音を含み、かつアルファベット順('abc'はOK、'bac'はNG)でなければいけません。
所望の長さLとC個の小文字アルファベットが与えられたとき、そのC個の文字から作れる条件をみたすような長さLのパスワードを全て出力してください。
パスワードは一行にひとつ、アルファベット順でなければいけません。

入力

1行目 スペースで区切られた数字2つ。LとC。
2行目 スペースで区切られた、パスワードのもととなるC個の小文字。

出力

1~?行目 各行にL文字のパスワード一つ(空白はなし)。出力はアルファベット順。

入力の例

4 6
a t c i s w

出力の例

acis
acit
aciw
acst
acsw
actw
aist
aisw
aitw
astw
cist
cisw
citw
istw

ヒント

サンプル出力は与えられた6文字から得られた4文字のパスワード

出典

USACO 2005 November Bronze