جایگشت


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

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

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

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

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

ورودی🔗

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

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

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

خروجی🔗

در تنها سطر خروجی، باقی‌مانده رتبه جایگشت داده شده را بر عدد 1 000 000 007 1 \ 000 \ 000 \ 007 (۱۰ به توان ۹ به علاوه ۷) بنویسید.

زیرمسئله‌ها🔗

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

مثال🔗

ورودی نمونه ۱🔗

5 2
1 3 2 5 4
Plain text

خروجی نمونه ۱🔗

1
Plain text
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.