ساعت
۹۰۱۲۳۴۵۶۷۸۹۰۹۰۱۲۳۴۵۶۷۸۹۰
ساعت
دقیقه
۹۰۱۲۳۴۵۶۷۸۹۰۹۰۱۲۳۴۵۶۷۸۹۰
دقیقه
ثانیه
۹۰۱۲۳۴۵۶۷۸۹۰۹۰۱۲۳۴۵۶۷۸۹۰
ثانیه
  • محدودیت زمان: ۲ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت
  • منبع: COCI 2013/2014

هوشنگ خان که به تازگی در کلاس‌های هشینگ ثبت نام کرده، به همه‌ی روش‌هایی که به رشته‌ها عدد نسبت می‌دهند علاقه‌ی خاصی پیدا کرده است. آخرین روشی که به او گفته شده، بیش از همه‌ی روش‌های پیشین نظر او را به خود جلب کرده؛ این روش بصورت بازگشتی و به شکل زیر تعریف می‌شود.

  • اگر ss یک رشته‌ی خالی باشد، f(s)=0f(s) = 0
  • داریم ww یک رشته است و cc یک حرف کوچک انگلیسی، هم‌چنین ord(c)ord(c) به معنای شماره حرف cc بین حروف انگلیسی است؛ یعنی ord(a)=1ord(a) = 1 و ord(z)=26ord(z) = 26. با این‌ها، داریم: f(w+c)=((f(w)×33) xor ord(c))mod  2m f(w + c) = ((f(w) \times 33)\ xor\ ord (c)) \mod 2^m که w+cw + c یعنی اضافه کردن حرف cc به انتهای رشته‌ی ww.

هوشنگ خان پس از مدتی بررسی، به امنیت این روش مشکوک شده است. برای همین به شما مقادیر nn و mm و xx را می‌دهد و از شما می‌خواهد که تعداد رشته‌های nn حرفی از حروف کوچک انگلیسی را بشمارید که مقدار ff برای آن‌ها برابر xx می‌شود.

ورودی

در سطر اوّل ورودی سه عدد nn و xx و mm می‌آید.

1n101 \le n \le 10 6m256 \le m \le 25 0x2m0 \le x \le 2^m

خروجی

در تنها خط خروجی یک عدد چاپ کنید که برابر پاسخ مسئله است.

زیرمسئله‌ها

زیرمسئله نمره محدودیت
۱ ۳۲ n5n \le 5
۲ ۶۸ بدون محدودیت اضافی

مثال

ورودی نمونه ۱

1 0 10 
Plain text

خروجی نمونه ۱

0
Plain text

ورودی نمونه ۲

1 2 10
Plain text

خروجی نمونه ۲

1
Plain text

کلمه‌ی تک‌حرفی b در این مثال شمرده می‌شود.

ورودی نمونه ۳

3 16 10
Plain text

خروجی نمونه ۳

4
Plain text

این ۴ کلمه، dxl و hph و lxd و xpx هستند.


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