با دریافت یک رشتهی s (شامل حروف کوچک انگلیسی) و یک عدد صحیح k، شما مجاز هستید حداکثر k کاراکتر از رشته را حذف کنید.
هدف این است که کمترین طول ممکن برای رشتهی باقیمانده پس از فشردهسازی با روش کدگذاری طول اجرا (Run-Length Encoding یا RLE) را برگردانید.
1. کدگذاری باید مطابق قوانین مسئلهی شمارهی ۱۳ انجام شود:
Run) برابر ۱ باشد، فقط خود کاراکتر نوشته میشود.تعداد ارقام باید دقیقاً برابر با تعداد ارقام واقعی طول دنباله باشد. برای مثال، عدد 10 با دو رقم نوشته میشود، نه با یک رقم ثابت.
2. تعداد حذفها حداکثر k است؛ بنابراین حذف تعداد کاراکترهای کمتر از k نیز مجاز است.
3. خروجی باید طول رشتهی فشردهشده باشد، نه خود رشتهی فشردهشده.
4. مرز تغییر تعداد ارقام، مهمترین نکتهی این مسئله است.
برای مثال:
"a9")."a10").بنابراین ممکن است کوتاهتر کردن یک دنبالهی طولانی نتیجهی بهتری داشته باشد.
مثال:
اگر رشتهی ورودی برابر با "aaaaaaaaaa" و مقدار k برابر با 1 باشد، با حذف یک کاراکتر، رشته به "a9" تبدیل میشود و طول آن برابر با ۲ خواهد بود؛ درحالیکه بدون حذف، "a10" با طول ۳ به دست میآید.
1 <= len(s) <= 1000 <= k <= len(s)"aaabcccd" 2
4
"aabbaa" 2
2
"aaaaaaaaa" 1
2
برای دسترسی به محیط کدنویسی آنلاین و ارسال راهحل، ثبتنام کنید.
قبلاً ثبتنام کردهاید؟ وارد شوید