Problem
دانشجویان یکی از دانشگاهها رباتی طراحی کردند تا فرآیند مونتاژ موتور هواپیما را تا حدی خودکار کند.
در فرآیند مونتاژ موتور، 26 نوع عملیات می تواند رخ دهد که با حروف کوچک الفبای لاتین نشان داده می شوند. فرآیند مونتاژ از N عملیات تشکیل شده است.
قرار است یک بار از ربات برای انجام بخشی از عملیات متوالی از فرآیند مونتاژ استفاده کند.
حافظه ربات از سلول های K تشکیل شده است که هر کدام شامل یک عملیات می باشد. عملیات به ترتیبی که در حافظه قرار گرفته اند، از اول شروع می شود. پس از تکمیل آخرین، ربات به کار اول ادامه می دهد. ربات را می توان پس از هر عملیاتی متوقف کرد. اگر ربات حداقل عملیات K + 1 را انجام دهد، از نظر اقتصادی مقرون به صرفه است.
شما باید برنامه ای بنویسید که با توجه به فرآیند مونتاژ، تعداد روش های اقتصادی استفاده از ربات را تعیین کند.
ورودی
خط اول حاوی عدد K > 0 - تعداد عملیاتی که می توان در حافظه ربات نوشت.
خط دوم شامل N > K حروف کوچک لاتین است که عملیات را نشان می دهد - فرایند مونتاژ موتور. عملیات از یک نوع با یک حرف مشخص می شوند (N <= 200000).
خروجی
چاپ یک عدد صحیح - تعداد روش های مقرون به صرفه برای استفاده از ربات.
<بدن>
ورودی |
خروجی |
2
zabacabab
|
5 |
2
abc |
0 |