AT_s8pc_5_h.Percepts of Atcoder

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

E869120 决定从今年开始到接下来 QQ 年,每年将一个字符串送给 square1001。他从字符串 SS 中选择赠送的字符串,并遵循以下规则:

  • 将字符串 SS 的所有子串的集合记为 TT。这里,SS 的子串是指从 SS 中移除任意数量的字符(包括不移除)后形成的至少包含一个字符的字符串。
  • 将集合 TT 按字典顺序排序后,应赠送第 KK 个字符串。

例如,如果 E869120 最喜欢的字符串是 aqua,则 TT 将是 ['a', 'aa', 'aq', 'aqa', 'aqu', 'aqua', 'au', 'aua', 'q', 'qa', 'qu', 'qua', 'u', 'ua']。当 K=10K=10 时,应赠送按字典序排序的第 1010 个字符串 qa。

然而,KK 的值会每年变化。因此,对于第 ii 年,给定 KiK_i 为第 ii 年的 KK 值,需要找出每年应赠送的字符串的最后 pip_i 个字符。

输入格式

首先输入字符串 SS。

接着输入一个整数 QQ,表示接下来的年数。

随后输入 QQ 行,每行包含两个整数 KiK_i 和 pip_i,分别表示第 ii 年的 KK 值和应输出的字符数。

输出格式

输出 QQ 行。第 ii 行应输出第 ii 年应赠送的字符串的最后 pip_i 个字符。

如果不存在应赠送的字符串,输出 -1。若应赠送的字符串长度小于 pip_i,则直接输出该字符串。例如,如果应赠送的字符串是 "abcde" 且 pi=7p_i=7,则输出 "abcde"。

输入输出样例

  • 输入#1

    aqua
    16
    1 10
    2 10
    3 10
    4 10
    5 10
    6 10
    7 10
    8 10
    9 10
    10 10
    11 10
    12 10
    13 10
    14 10
    15 10
    16 10

    输出#1

    a
    aa
    aq
    aqa
    aqu
    aqua
    au
    aua
    q
    qa
    qu
    qua
    u
    ua
    -1
    -1
  • 输入#2

    tourist
    2
    76 10
    76 4

    输出#2

    tourist
    rist
  • 输入#3

    eightsixnineonetwozero
    6
    869120 100
    869120 10
    869120 8
    869120 6
    869120 4
    869120 2

    输出#3

    eihinieonetwoze
    ieonetwoze
    onetwoze
    etwoze
    woze
    ze

说明/提示

  • 1≤Q≤1051 \leq Q \leq 10^5,保证字符串 SS 由小写字母组成,且 ∣S∣≤3×105|S| \leq {3\times 10^5}。
  • pip_i 是 ∣S∣|S| 以内的正整数,满足 p1+p2+...+pQ≤106p_1 + p_2 + ... + p_Q \leq 10^6。
  • KiK_i 是 101810^{18} 以内的正整数。
  • ∣S∣|S| 表示 SS 的字符串位数。

输入解题思路,AI测评打分。不知道怎么写?

首页