새 젖소 RFID 코드

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

존 아저씨는 벌겋게 달군 인두로 낙인을 찍는 대신 젖소에게 RFID 태그를 사용하기로 했습니다.

각 RFID 태그에는 길이가 정확히 $N$ ($3 \le N \le 15$)인 코드가 저장됩니다. 코드의 각 문자는 알파벳 대문자 A부터 Z 중 하나이며, 하나의 코드 안에서 같은 문자가 두 번 이상 나타나지 않습니다.

코드의 각 자리에 쓰이는 문자는 그 자리마다 미리 정해진 허용 문자 집합에서 고릅니다. 각 집합은 알파벳 순서로 주어집니다.

기계는 유효한 모든 코드를 알파벳(사전) 순서로 나열하고 $1$번부터 번호를 매깁니다. 새로운 젖소 무리는 아직 쓰지 않은 다음 코드들을 순서대로 사용하며, 존 아저씨는 지금까지 사용한 코드의 개수를 기록해 둡니다.

다음 무리가 사용할 첫 번째 코드와 마지막 코드의 번호 $\text{start}$와 $\text{finish}$가 주어집니다 ($1 \le \text{start} < \text{finish} \le 22{,}000{,}000$, $\text{finish} - \text{start} < 2000$). $\text{start}$번부터 $\text{finish}$번까지의 코드를 알파벳 순서로 모두 출력하세요.

입력

  • 첫째 줄에 세 정수 $N$, $\text{start}$, $\text{finish}$가 공백으로 구분되어 주어집니다.
  • 다음 $N$개의 줄에는 각 자리에 허용되는 문자들이 주어집니다. 각 줄은 서로 다른 대문자 $1$개 이상 $26$개 이하로 이루어진 문자열이며, 알파벳 순서로 정렬되어 있습니다.

출력

$\text{finish} - \text{start} + 1$개의 줄을 출력합니다. $i$번째 줄에는 $\text{start} + i - 1$번 코드를 출력합니다. (코드는 알파벳 순서로 $1$번부터 번호가 매겨집니다.)