عبدالله اخیراً یک شخصیت کارتونی در قالب ASCII تحت عنوان QQ برای کوئرا طراحی کرده که بهشکل زیر است:
او از شما میخواهد با بهکارگیری این شخصیت کارتونی، برنامهای تحت عنوان qsay بنویسید تا با cowsay رقابت کند. این برنامه قرار است یک متن از ورودی دریافت کند و متن را برای مثال بهشکل زیر چاپ کند:
علاوه بر متن ورودی، این برنامه یک عدد صحیح دریافت میکند که بیانگر حداکثر طول یک خط در متن خروجی برنامه است. کلمات ممکن است شامل whitespace های متعددی (از جمله space ، tab یا newline) باشد، اما در خروجی برنامه، کلمات باید تنها با یک space از یکدیگر جدا شوند. همچنین کلمات باید بهگونهای در کنار یکدیگر قرار گیرند که حداکثر طول یک خط برابر با حداکثر طول مشخصشده در ورودی برنامه باشد.
خروجی در حالت تکخطی باید بهترتیب در قالب خطوط زیر چاپ شود:
_
<
، سپس یک space ، سپس متن خروجی، سپس «اندازهی طولانیترین خط در متن خروجی منهای طول خط فعلی بعلاوهی ۱» تا space و در نهایت، کاراکتر >
-
خروجی در حالت چندخطی باید بهترتیب در قالب خطوط زیر چاپ شود:
_
/
، سپس یک space ، سپس اولین خط متن خروجی، سپس سپس «اندازهی طولانیترین خط در متن خروجی منهای طول خط فعلی بعلاوهی ۱» تا space و در نهایت، کاراکتر \
|
، سپس یک space ، سپس اولین خط متن خروجی، سپس «اندازهی طولانیترین خط در متن خروجی منهای طول خط فعلی بعلاوهی ۱» تا space و در نهایت، کاراکتر |
\
، سپس یک space ، سپس آخرین خط متن خروجی، سپس «اندازهی طولانیترین خط در متن خروجی منهای طول خط فعلی بعلاوهی ۱» تا space و در نهایت، کاراکتر /
-
توجه: اگر کلمهای در متن وجود داشت که طول آن از حداکثر طول یک خط در متن خروجی بیشتر بود، فقط عبارت Impossible
را چاپ کنید.
بخش مربوط به شخصیت کارتونی همراه با خطوط متصلکنندهی شخصیت کارتونی به متن بهصورت زیر است (به space های ابتدای خطوط توجه داشته باشید):
در خط اول ورودی، ابتدا عدد صحیح وارد میشود که بیانگر حداکثر طول هر خط در متن خروجی است.
در خطوط بعدی (که تعدادشان نامشخص است)، کلمات متن وارد میشوند. هر کلمه لزوماً در یک خط وارد نمیشود. مجموع طول کلمات حداکثر کاراکتر است.
در خروجی، متن نهایی را مطابق توضیحات دادهشده چاپ کنید.