قاب چوبی


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

در یک انباری nn تکه چوب داریم. طول چوب iiام برابر lil_i است. حال می‌خواهیم kk تکه از این چوب‌ها را برداریم به طوری که بتوان با آن‌ها یک قاب به شکل kk ضلعی ساخت.

توجه کنید صرفاً انتخاب کردن تکه چوب‌ها یک حالت جدید به وجود می‌آورد و نیازی به چیدن آن‌ها برای اضلاع یک قاب نداریم. همچنین دو تکه چوب با طول برابر را متمایز در نظر بگیرید.

از شما می‌خواهیم تعداد حالت‌های ممکن برای ساختن این قاب را چاپ کنید.

تضمین میشود که مقدار kk کوچکتر مساوی nn است

ورودی🔗

در سطر اول ورودی، به ترتیب دو عدد صحیح و مثبت nn و kk آمده است. 3n603 \leq n \leq 60 3k83 \leq k \leq 8

در سطر دوم ورودی، nn عدد صحیح که با یک فاصله از هم جدا شده‌اند و عدد iiام آن همان lil_i یعنی طول چوب iiام است. 1li601 \leq l_i \leq 60

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

زیرمسئله ‌ محدودیت‌ها امتیاز
۱ 3k53 \le k \le 5 و 3n203 \le n \le 20 ۴۰
۲ بدون محدودیت اضافه ۶۰

خروجی🔗

در تنها سطر خروجی، تعداد روش‌های انتخاب کردن چوب برای ساخت قاب را چاپ کنید.

مثال🔗

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

5 3
1 1 1 1 1
Plain text

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

10
Plain text

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

6 4
1 2 4 8 16 32
Plain text

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

0
Plain text

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

5 5
1 2 3 4 5 
Plain text

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

1
Plain text