#27. String Hashing — Substring Checking
Sizga bitta uzun S satr taqdim etiladi. Shundan so'ng ushbu satr ustida q ta so'rov beriladi. Har bir so'rovda 4 ta son keladi: l1, r1, l2, r2. Sizning vazifangiz S satrning [l1, r1] oralig'idan qirqib olingan qism satr bilan [l2, r2] oralig'idan qirqib olingan qism satr bir-biriga aynan o'xshash (teng) ekanligini aniqlashdir.
Birinchi qatorda S satri. Ikkinchi qatorda so'rovlar soni q. Keyingi q ta qatorda to'rttadan butun son: l1, r1, l2, r2 beriladi (indekslar 1 dan boshlanadi).
Har bir so'rov uchun qism satrlar teng bo'lsa "YES", aks holda "NO" so'zini chiqaring.
|s| ≤ 2×10⁵
You are given a long string S. Then, q queries are made on this string. Each query provides 4 numbers: l1, r1, l2, r2. Your task is to determine whether the substring extracted from the range [l1, r1] of string S is exactly identical (equal) to the substring extracted from the range [l2, r2].
The first line contains the string S. The second line contains the number of queries q. The next q lines contain four integers each: l1, r1, l2, r2 (1-based indexing).
For each query, output "YES" if the substrings are equal, otherwise output "NO".
|s| ≤ 2×10⁵
Вам дана длинная строка S. Затем к этой строке выполняется q запросов. В каждом запросе даются 4 числа: l1, r1, l2, r2. Ваша задача — определить, является ли подстрока, вырезанная из отрезка [l1, r1] строки S, абсолютно идентичной (равной) подстроке, вырезанной из отрезка [l2, r2].
В первой строке задана строка S. Во второй строке задано количество запросов q. В следующих q строках заданы по четыре целых числа: l1, r1, l2, r2 (индексация с 1).
Для каждого запроса выведите "YES", если подстроки равны, иначе выведите "NO".
|s| ≤ 2×10⁵
Sizga bitta uzun S satr taqdim etiladi. Shundan so'ng ushbu satr ustida q ta so'rov beriladi. Har bir so'rovda 4 ta son keladi: l1, r1, l2, r2. Sizning vazifangiz S satrning [l1, r1] oralig'idan qirqib olingan qism satr bilan [l2, r2] oralig'idan qirqib olingan qism satr bir-biriga aynan o'xshash (teng) ekanligini aniqlashdir.
Kiruvchi ma'lumotlar
Birinchi qatorda S satri. Ikkinchi qatorda so'rovlar soni q. Keyingi q ta qatorda to'rttadan butun son: l1, r1, l2, r2 beriladi (indekslar 1 dan boshlanadi).
Chiquvchi ma'lumotlar
Har bir so'rov uchun qism satrlar teng bo'lsa "YES", aks holda "NO" so'zini chiqaring.
Cheklovlar
|s| ≤ 2×10⁵
Misollar
abca 2 1 1 4 4 1 2 3 4
YES NO