Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024
Problem description
Jasio zapisał na rolce papieru toaletowego bardzo długie słowo złożone tylko z małych liter alfabetu angielskiego. Kiedy znudziło mu się już pisanie nic nieznaczących znaczków postanowił popatrzeć na niektóre podsłowa (spójne podciągi) zapisanego słowa i porównywać je leksykograficznie.
Jeśli porównujemy leksykograficznie dwa ciągi znaków to wcześniejszy
jest ten, który ma mniejszy znak na pierwszej pozycji, na której te
ciągi się różnią, a jeśli takiej pozycji nie ma to wcześniejszy jest
ciąg krótszy: np. aneta
jest wcześniej leksykograficznie
niż anna
, zaś mam
jest wcześniej
leksykograficznie niż mama
.
Napisz program, który: wczyta słowo, które napisał Jaś oraz jego zapytania, odpowie na wszystkie zapytania i wypisze wynik na standardowe wyjście.
Wejście
W pierwszym wierszu wejścia znajduje się ciąg małych znaków alfabetu angielskiego napisany przez Jasia. W drugim wierszu znajduje się jedna liczba naturalna Q, określająca liczbę pytań Jasia. W kolejnych Q wierszach znajdują się opisy kolejnych zapytań, po jednym w wierszu. Opis każdego zapytania składa się z czterech liczb naturalnych: Ai, Bi, Ci, Di, pooddzielanych pojedynczymi odstępami i określającymi, że Jasio chce porównać leksykograficznie podsłowo od Ai-tego do Bi-tego znaku z podsłowem od Ci-tego do Di-tego znaku. Znaki są numerowane od 1 do długości słowa zgodnie z występowaniem znaków w ciągu Jasia.
Wyjście
Twój program powinien wypisać na wyjście dokładnie Q wierszy. W i-tym wierszu powinna się znaleźć
odpowiedź dla i-tego
zapytania. Odpowiedź dla każdego zapytania powinna być:
MNIEJSZY
, WIEKSZY
, ROWNY
w
zależności od tego czy pierwsze podsłowo jest mniejsze, większe lub
równe leksykograficznie drugiemu.
Ograniczenia
Q ≤ 100 000. Długość ciągu nie przekracza 1 000 000 znaków.
Przykład
Input | Output | |
|
|