نردبان کلمات یک دنباله از کلمات است که که هر دو تا کلمهی پشتسرهم صرفا فقط در یک حرف تفاوت داشته باشند.. یک مثال از این نردبان کلمات (البته به صورت افقی نوشتهایم!!) میتواند $todo, food, wood, word, down$ باشد. توجه کنید که حروف دو کلمهی پشتسرهم میتواند جابهجا شود ولی دقیقا یک حرف باید تغییر کند.
برای این مسئله به شما یک فرهنگ لغات از کلمات مختلف داده میشود که همگی طولشان یکسان است. شما باید یک برنامه بنویسید که کوتاهترین نردبان از کلمات را بیابد که کلمهی اول و کلمهی آخر آن هیچ حرف یکسانی نداشته باشد.
## توجه
اگر $s$ و $t$ دو رشته از حروف باشند، که تعداد حروفشان یکسان است و $s_i$ حرف $i$ام رشتهی $s$ را نشان دهد آنگاه گوییم $s$ از $t$ به صورت الفبایی کوچکتر است اگر برای یک $i$ داشته باشیم $s_i < t_i$ و برای تمام $j<i$ داشته باشیم $s_j=t_j$
# محدودیتها
$$
1 \leq n \leq 100
$$
$$
1 \leq l \leq 20
$$
+ زبان C و C++
+ محدودیت زمان: ۱ ثانیه
+ محدودیت حافظه: ۱۵۰ مگابایت
+ زبان پایتون و جاوا
+ محدودیت زمان: ۲.۵ ثانیه
+ محدودیت حافظه: ۲۰۰ مگابایت
# ورودی
سطر نخست ورودی شامل دو عدد صحیح به ترتیب $n$ و $l$ میباشد که نشاندهندهی تعداد کلمات فرهنگ لغات و طول هر کدام میباشد.
در هر کدام از $n$ سطر بعد یک کلمه با حروف $a-z$ به طول $l$ آمده است.
# خروجی
در تنها سطر خروجی کوچکترین نردبان الفبایی با شرایط خواسته شده را چاپ کنید و بین هر دو کلمهی پشت سر هم فاصله چاپ کنید.
ورودی به گونهای داده میشود که تضمین شود حتما نردبان خواسته شده وجود دارد و اگر چندین نردبان با طول یکسان وجود داشت، نردبانی را انتخاب کنید که با توجه به تعریف داده شده به صورت الفبایی کوچکتر باشد.
# مثال
## نمونه ورودی
```
9 3
alt
spy
sea
opt
pea
ape
spa
apt
ale
```
## نمونه خروجی
```
ale alt apt opt
```
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.