Fișierul intrare/ieșire zodiac.in, zodiac.out Sursă Baraj Yakutia 2014
Autor Mihai Andreescu Adăugată de avatar mihai995 Andreescu Mihai mihai995
Timp de execuție pe test 1.6 sec Limită de memorie 16384 KB
Scorul tău N/A Dificultate N/A
open book Poți vedea testele pentru această problemă accesând atașamentele .

Zodiac

Nana este o fată foarte superstițioasă căreia îi plac petrecerile – ea își alege partenerul de dans după zodie. Ionel vrea s-o impresioneze pe Nana ghicindu-i viitorul – să-i prezică zodia partenerului dintr-o zi viitoare.

Ionel a observat că alegerea zodiei preferate ale Nanei depinde doar de preferința din ziua anterioară și de zodia considerată de Mama Omida, astrologa ORB TV, ca fiind cea mai norocoasă. Așadar, a stat și și-a notat această dependență într-un tabel 12 × 12, în care elementul de pe poziția (i, j) indică zodia preferată a Nanei, dacă ieri a preferat zodia i, iar Mama Omida consideră j cea mai norocoasă zodie astăzi.

În plus, Ionel a spart baza de date a ORB TV și a aflat un șir format din caractere din mulțimea {a, b, c, d, e, f, g, h, i, j, k, l} ce conține cu siguranță ca subsecvență zodiile pe care Mama Omida le va declara drept norocoase în viitor. Chiar mai mult, știe că aceste preziceri sunt periodice (în loc de a ghici din nou în stele, Mama Omida refolosește zodiile de la început). Astfel, dacă secvența folosită de Mama Omida este a, e, f, atunci ea va numi drept zodia zilei următoarele zodii, în ordine: a, e, f, a, e, f, a, e, f, ...

Acum, Ionel se întreabă: „dacă subsecvența de la x la y este succesiunea zodiilor din viitor, care va fi zodia preferată a Nanei peste z zile?” Deoarece Ionel nu are cunoștințe algoritmice, el nu știe să răspundă fără a număra băbește sau ghici răspunsul, așa că vă întreabă pe voi.

Date de intrare

Fișierul de intrare zodiac.in va conține, în această ordine, următoarele date:

  • N – lungimea șirului
  • C – zodia preferată a Nanei la momentul inițial
  • S – șirul de date furate din baza de date
  • 12 linii a câte 12 caractere de la a la l, reprezentând tabelul observat de Ionel
  • Q – numărul de întrebări
  • Q linii de forma x y z, reprezentând întrebările lui Ionel

Date de ieșire

În fișierul de ieșire zodiac.out se vor afla Q caractere, pe câte o linie fiecare, reprezentând răspunsurile la cele Q întrebări ale lui Ionel.

Restricții

  • 2 ≤ N ≤ 50 000
  • 1 ≤ Q ≤ 300 000
  • Pentru fiecare întrebare (x, y, z), 0 ≤ xy < |S|, 1 ≤ z ≤ 109 și sunt numere întregi
  • Caracterele lui S, ale tabelului și zodia preferată inițială a Nanei aparțin mulțimii {a, b, c, d, e, f, g, h, i, j, k, l} (primele 12 caractere ale alfabetului latin)
  • Pentru tabel: a este zodia 1, b este zodia 2 etc, c este zodia 3, ... l este zodia 12
  • Pentru întrebările puse de Ionel, șirul se consideră indexat de la 0
  • Pentru 30% din teste, N, Q ≤ 2 000

Exemplu

zodiac.in zodiac.out
6 a
abcdef
abcdefghijkl
bcdefghijkla
cdefghijklab
defghijklabc
efghijklabcd
fghijklabcde
ghijklabcdef
hijklabcdefg
ijklabcdefgh
jklabcdefgha
klabcdefghaj
labcdefghajk
3
1 3 2
2 5 3
4 5 4
d
j
g

Trebuie să te autentifici pentru a trimite soluții. Click aici

Indicii de rezolvare

Arată 2 categorii