Fişierul intrare/ieşire:brperm.in, brperm.outSursăRMI 2020 Ziua 1
AutorTamio-Vesa NakajimaAdăugată demihai50000Mihai-Cristian Popescu mihai50000
Timp execuţie pe test1 secLimită de memorie256000 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Brperm

Notă: În enunţ, b1...bK reprezintă un întreg scris în notaţie binară, unde  b_1 este cel mai semnificativ bit, iar bK este cel mai puţin semnificativ bit.

Vrăjitoarea Roxana, în timp ce zbura pe mătură prin galaxie, a descoperit o nouă planetă (paneta BR-PERM) unde toţi locuitorii erau implicaţi într-un dans ciudat. În acest dans, participanţii stau într-o linie, iar apoi se reordonează. Într-un dans la care participa 2K locuitori, persoana de pe poziţia b1...bK se va muta la poziţia bK...b1 (indexat de la 0).
Roxana a realizat că fiecare persoana de pe BR-PERM poartă îmbrăcaminte din una dintre cele 26 de culori. Aceste culori vor fi reprezentate de litere din alfabetul latin.
BR-PERM-ienii consideră speciale şirurile de dansatori unde secvenţa de culori pe care locuitorii le poarta înainte şi după dans sunt la fel. Ei numesc astfel de secvenţe drăguţe. De exemplu, cand K=2, avem un şir de 4 dansatori 0, 1, 2, 3 care dupa dans va fi ordonat în următorul fel: 0, 2, 1, 3. Astfel secvenţa de culori abba este drăguţă, dar abca nu este.
BR-PERM-ienii o roagă pe Roxana să îi ajute cu această problemă (se pare că vrăjitoarele mereu ajută oamenii să îşi rezolve problemele. Aceştia îi arată un şir de n dansatori şi o roagă să îi răspundă la mai multe întrebari: "Este secvenţa de lungime 2K care începe la dansatorul P drăguţă?

Date de intrare

Fişierul de intrare "brperm.in" conţine, pe prima linie numărul N. Pe linia următoare se află un şir de caractere (litere mici ale alfabetului latin) de lungime N. Pe următoarea linie se află numărul de întrebari Q, iar pe următoarele Q linii se află câte două numere P, K.

Date de ieşire

În fişierul de ieşire "brperm.out" se află răspunsurile la cele Q întrebări ( 1 dacă secvenţa dată este drăguţă, 0 dacă nu este), în ordine, câte unul pe linie.

Restricţii

  • 1 ≤ N ≤ 500000
  • 1 ≤ Q ≤ 500000
  • Pentru 20 puncte, 1 ≤ N ≤ 1000 şi 1 ≤ Q ≤ 1000
  • Pentru alte 30 puncte, 1 ≤ N ≤ 100000 şi 1 ≤ Q ≤ 100000
  • Pentru alte 20 puncte, s conţine doar caracterele 'a' şi 'b', iar culorile sunt alese aleator independent cu o anumită probabilitate fixată pentru fiecare test.

Exemplu

brperm.inbrperm.out
8
axxyxxyb
4
0 3
1 1
1 2
3 2
1
1
0
1
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?