• محدودیت زمان: ۵ ثانیه
  • محدودیت حافظه: ۶۰۰ مگابایت

یک جایگشت از اعداد ۱ تا nn را kk- متناوب می‌گوییم، اگر هیچ زیردنباله‌ی متوالی در آن وجود نداشته باشد که طولش از kk بیش‌تر باشد و یکنوا (صعودی یا نزولی) باشد. مثلا اگر n=5 n = 5 ، جایگشت <1,5,2,3,4> <1,5,2,3,4> ۲-متناوب نیست.

برنامه‌ای بنویسید که:

اعداد nn و kk و یک جایگشت nn تایی kk- متناوب را از ورودی بخواند.

با فرض این‌که همه جایگشت‌های nn تایی kk-متناوب را به ترتیب الفبایی مرتب کنیم، حساب کند که جایگشت داده شده چندمین جایگشت است.

ورودی

در سطر اول ورودی به ترتیب دو عدد nn و kk آمده است.

در سطر بعدی nn عدد آمده است که عناصر یک جایگشت kk- متناوب را مشخص می‌کنند.

2kn400 2 \le k \le n \le 400

خروجی

در تنها سطر خروجی، باقی‌مانده رتبه جایگشت داده شده را بر عدد 109+710^9 + 7 بنویسید.

زیرمسئله‌ها

زیرمسئله نمره محدودیت
۱ ۳۰ n15 n \le 15
۲ ۲۰ n100 n \le 100
۳ ۵۰ بدون محدودیت اضافی

مثال

ورودی نمونه ۱

5 2
1 3 2 5 4
Plain text

خروجی نمونه ۱

1
Plain text

ارسال پاسخ برای این سؤال
فایلی انتخاب نشده است.