CF1037H.Security

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Some programming website is establishing a secure communication protocol. For security reasons, they want to choose several more or less random strings.

Initially, they have a string ss consisting of lowercase English letters. Now they want to choose qq strings using the following steps, and you are to help them.

  1. A string xx consisting of lowercase English letters and integers ll and rr ( 1lrs1 \leq l \leq r \leq |s| ) are chosen.
  2. Consider all non-empty distinct substrings of the slsl+1srs_l s_{l + 1} \ldots s_r , that is all distinct strings sisi+1sjs_i s_{i+1} \ldots s_{j} where lijrl \le i \le j \le r . Among all of them choose all strings that are lexicographically greater than xx .
  3. If there are no such strings, you should print 1-1 . Otherwise print the lexicographically smallest among them.

String aa is lexicographically less than string bb , if either aa is a prefix of bb and aba \ne b , or there exists such a position ii ( 1imin(a,b)1 \le i \le min(|a|, |b|) ), such that ai<bia_i < b_i and for all jj ( 1j<i1 \le j < i ) aj=bja_j = b_j . Here a|a| denotes the length of the string aa .

输入格式

The first line of input contains a non-empty string ss ( 1s1051 \leq |s| \leq 10^{5} ) consisting of lowercase English letters.

The second line contains an integer qq ( 1q21051 \le q \le 2 \cdot 10^5 ) — the number of strings to select.

Each of the next qq lines contains two integers ll , rr ( 1lrs1 \leq l \leq r \leq |s| ) and a non-empty string xx consisting of lowercase English letters. The total length of strings xx for all queries does not exceed 21052 \cdot 10^{5} .

输出格式

Output qq lines, each of them should contain the desired string or 1-1 , if there is no such string.

输入输出样例

  • 输入#1

    baa
    5
    1 2 ba
    2 3 a
    1 2 b
    2 3 aa
    1 3 b
    

    输出#1

    -1
    aa
    ba
    -1
    ba
    
  • 输入#2

    bacb
    4
    1 2 ba
    2 3 ac
    1 3 ac
    3 4 c
    

    输出#2

    -1
    c
    b
    cb
    
  • 输入#3

    bba
    1
    1 1 b
    

    输出#3

    -1
    

说明/提示

Consider the first example.

The string ss is "baa". The queries are as follows.

  1. We consider the substring s1s2s_1 s_2 that is "ba". It has substrings "b", "a" and "ba", since none of them is greater than the query string "ba", the answer is 1-1 .
  2. We consider substring "aa". Among its substrings only "aa" is greater than the query string "a". So the answer is "aa".
  3. We consider substring "ba". Out of "b", "a" and "ba" only "ba" is greater than the query string "b", so the answer is "ba".
  4. We consider substring "aa". No substring of "aa" is greater than the query string "aa" so the answer is 1-1 .
  5. We consider substring "baa" and it has (among others) substrings "ba", "baa" which are greater than the query string "b". Since "ba" is lexicographically smaller than "baa", the answer is "ba".
首页