میخواهیم یک رشته را به یک کد دودویی تبدیل کنیم. همانطوری که میدانید هر رشته شامل یک سری حرف است که از کنار هم قرار گرفتن آن حرفها رشتهی مورد نظر ما ساخته میشود.
ما برای اینکه رشته را بتوانیم به یک کد دودویی تبدیل کنیم، باید ابتدا به هر کدام از حرفهای رشته یک کد دودویی نسبت بدهیم.
کدهای دودویی که ما به حرفها نسبت میدهیم نباید پیشوند یکدیگر باشند (نباید یک کد پیشوند یک کد دیگر باشد) شما باید در این سوال تعداد تکرارهای هر حرف در رشته را از ورودی بخوانید و سپس به حرفها کد نسبت بدهید به طوری که کدهای نسبت داده شده به حرفها صعودی باشد.
به عبارت دیگر، کدی که به حرف $i$ام نسبت داده میشود باید کوچکتر باشد از کدی که به حرف $i+1$ام نسبت داده شده است. از بین تمامی کدهای صعودی، کدی را انتخاب کنید، که طول آن کمینه شود.
خروجی شامل $n$ خط میباشد که در خط $i$ام خروجی، کد نسبت داده شده به حرف $i$ام را چاپ کنید. در صورتی که بیش از یک جواب وجود داشت، یکی از آنها را به دلخواه چاپ کنید.