Задачі
Рівні підрядки
Рівні підрядки
Дано рядок S = s1s2...sn
та множина запитів виду (l1
, r1
, l2
, r2
).
Для кожного запиту потрібно відповісти, чи рівні підрядки sl1
...sr1
та sl2
...sr2
.
Вхідні дані
У першому рядку записано рядок S, який складється з рядкових латинських літер. Цей рядок непорожній і має довжину не більше 105
символів. У другому рядку записано ціле число q (1 ≤ q ≤ 50000) - кількість запитів. У кожному з наступнх q рядків записані числа l1
, r1
, l2
, r2
(1 ≤ l1
≤ r1
≤ |S|, 1 ≤ l2
≤ r2
≤ |S|).
Вихідні дані
Для кожного запиту виведіть "+", якщо відповідні підрядки рівні, та "-" у протилежному випадку.
Вхідні дані #1
abacaba 4 1 1 7 7 1 3 5 7 3 4 4 5 1 7 1 7
Вихідні дані #1
++-+