رشته‌های خفن


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

یک رشته با طول LL را خفن می‌نامیم اگر L3L \ge 3 باشد و یک کاراکتر وجود داشته باشد که اکیداً بیش از L/2L/2 بار در این رشته ظاهر شود.

رشته‌ای به نام SS به شما داده شده است و شما باید QQ پرسش را در مورد این رشته پاسخ دهید. در هر پرسش، یک زیررشته‌ی پیوسته SL,SL+1,,SRS_L, S_{L+1}, \ldots, S_R\, به شما داده می‌شود. تمام زیررشته‌های پیوسته‌ی این زیررشته را در نظر بگیرید. شما باید تعیین کنید که آیا حداقل یکی از آن‌ها خفن است یا خیر.

ورودی🔗

  • اولین خط ورودی شامل یک عدد صحیح TT است که تعداد سناریوها را نشان می‌دهد. سپس توضیحات TT سناریو به دنبال آن می‌آید.
  • اولین خط هر سناریو شامل دو عدد صحیح جداشده با فاصله، NN و QQ است (اول NN می‌آید و سپس QQ).
  • خط دوم شامل یک رشته‌ی SS با طول NN است.
  • هر یک از QQ خط بعدی شامل دو عدد صحیح جداشده با فاصله‌ی LL و RR است که یک پرسش را توصیف می‌کند.

خروجی🔗

برای هر پرسش، یک خط شامل YES چاپ کنید اگر زیررشته‌ی داده‌شده شامل حداقل یک زیررشته‌ی خفن باشد و یا NO اگر هیچ زیررشته‌ی خفنی در آن وجود نداشته باشد.

محدودیت‌ها🔗

  • 1T101 \leq T \leq 10
  • 1N,Q1051 \leq N, Q \leq 10^5
  • 1LRN1 \leq L \leq R \leq N
  • رشته‌ی SS فقط شامل حروف کوچک انگلیسی است.

مثال🔗

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

1
10 2
helloworld
1 3
1 10
Plain text

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

NO
YES
Plain text