{"code":"23on3c24","name":"Robot With String","description":"[user:shiba] đang phát triển một robot chuyên xử lí chuỗi. Khi robot được [user:_minhduc] đưa cho một chuỗi chỉ gồm các chữ cái tiếng anh viết thường, nó sẽ xử lí chuỗi theo quy trình sau:\r\n\r\n - Bước $1$: Tìm $i$ là chỉ số vị trí nhỏ nhất sao cho $S_i = S_{i+1}$ . Nếu không tồn tại $i$ thỏa mãn điều đó, robot sẽ chấm dứt quy trình. \r\n \r\n - Bước $2$: Nếu $S_i$ là ```z``` thì ta xóa $S_i$ và $S_{i+1}$ và trong chuỗi $S$ . Nếu không phải là ```z``` : Gọi $change$ là chữ cái tiếp theo của $S_i$ theo alphabet, ta thay thế $S_i$ và $S_{i+1}$ bằng chữ cái $change$ (tất nhiên là $length(s)$ sẽ bị giảm đi $1$ đơn vị).\r\n \r\n - Bước $3$: Quay lại bước $1$.\r\n\r\n**Ví dụ:** Khi robot được giao cho chuỗi ```axxxxza``` thì con robot sẽ thực hiện theo quy trình theo như sau: ```axxxxza``` $\\rightarrow$ ```ayxxza``` $\\rightarrow$ ```ayyza``` $\\rightarrow$ ```azza``` $\\rightarrow$ ```aa``` $\\rightarrow$ ```b```.\r\n\r\n**Yêu cầu**: Cho một chuỗi $S$ và $Q$ truy vấn. Mỗi truy vấn có câu hỏi như sau và bạn hãy trả lời nó:\r\n\r\n - Cho hai số nguyên dương $l$ và $r$ và gọi $T$ là chuỗi con được ghép từ các chữ cái $S_l$ đến $S_r$. Nếu ta thực hiện quy trình giống con robot thì liệu có thể biến chuỗi $T$ thành một chuỗi rỗng được không? Biết rằng vị trí của xâu bắt đầu từ $1$ (bắt đầu từ $S_1$).\r\n\r\n#### Input\r\n- Dòng đầu tiên chứa chuỗi $S$ $(1 \\le length(S) \\le 5 \\times 10^5)$.\r\n- Dòng tiếp theo chứa số nguyên dương $Q$ $(1 \\le Q \\le 10^5)$.\r\n- $Q$ dòng còn lại mỗi dòng chứa hai số nguyên dương $l$ và $r$ ứng với mỗi truy vấn $(1 \\le l \\le r \\le length(S))$\r\n\r\n#### Output\r\n- Ứng với mỗi truy vấn in ra ```Yes``` nếu có thể biến chuỗi $T$ thành chuỗi rỗng theo câu hỏi, nếu không thể thì in ra ```No```.\r\n\r\n#### Scoring\r\n - Subtask $1$ ($30\\%$ số điểm): Có $Q \\le 5$.\r\n - Subtask $2$ ($70\\%$ số điểm): Không có ràng buộc gì thêm.\r\n\r\n#### Example\r\n\r\n!!! question \"Test 1\"\r\n    ???+ \"Input\"\r\n        ```sample\r\n        axxxxza\r\n        2\r\n        1 7\r\n        2 6\r\n        ```\r\n    ???+ success \"Output\"\r\n        ```sample\r\n        No\r\n        Yes\r\n        ```\r\n    ??? warning \"Note\"\r\n        - Đối với truy vấn đầu tiên chuỗi sẽ được xử lí như sau: ```axxxxza``` $\\rightarrow$ ```ayxxza``` $\\rightarrow$ ```ayyza``` $\\rightarrow$ ```azza``` $\\rightarrow$ ```aa``` $\\rightarrow$ ```b```.\r\n        - Đối với truy vấn thứ hai chuỗi sẽ được xử lí như sau: ```xxxxz``` $\\rightarrow$ ```yxxz``` $\\rightarrow$ ```yyz``` $\\rightarrow$ ```zz``` $\\rightarrow$ ``` ```.","points":2000.0,"partial":true,"time_limit":1.0,"memory_limit":262144,"short_circuit":false,"allowed_languages":[3,4,34,36,37,5,6,11,12,14,28,2,38,39,9,18,17,29,23,27,35,25,26,10,7,19,32,1,8,15,16,24,20,33,13,41,21,40],"is_public":true,"is_manually_managed":false,"permissions":{"can_edit":false}}