atcoder#PANASONIC2020D. String Equivalence
String Equivalence
配点 : 点
問題文
この問題では、英小文字からなる文字列のみを考えます。
文字列 は以下の条件を満たすとき 同型 であるといいます。
- である。
- 任意の に対し次のいずれかが成立する。- かつ
- かつ
- かつ
- かつ
たとえば、abcac
と zyxzx
は同型ですが、abcac
と ppppp
は同型ではありません。
文字列 は以下の条件を満たすとき 標準形 であるといいます。
- 任意の と同型な文字列 に対し、 が成立する。ただしここで は辞書順での比較を表す。
たとえば、abcac
は標準形ですが、zyxzx
はそれより辞書順で小さい abcac
と同型のため標準形ではありません。
整数 が与えられます。 長さ の標準形の文字列を全て、辞書順で昇順で出力してください。
制約
- 入力は全て整数である。
入力
入力は以下の形式で標準入力から与えられる。
出力
長さ の標準形の文字列が 個あり、辞書順で であるとする。 このとき以下の形式で出力せよ。
1
a
2
aa
ab