#arc097a. [arc097_a]K-th Substring

[arc097_a]K-th Substring

问题描述

给定一个字符串 ss。在 ss不同 子字符串中,打印第 KK 个按字典序最小的子字符串。

ss 的子字符串是通过从 ss 中取出一个非空连续部分获得的字符串。例如,如果 ss \= ababc,则 ababababc 都是 ss 的子字符串,而 acz 和空字符串则不是。此外,我们说子字符串是不同的,当它们作为字符串时是不同的。

X=x1x2...xnX = x_{1}x_{2}...x_{n}Y=y1y2...ymY = y_{1}y_{2}...y_{m} 是两个不同的字符串。当且仅当 YYXX 的前缀或存在最小整数 jj,使得 xjneqyjx_{j} \\neq y_{j}xj>yjx_{j} > y_{j} 时,XX 按字典序大于 YY

约束条件

  • 11 s|s| 50005000
  • ss 由小写英文字母组成。
  • 11 KK 55
  • ss 至少有 KK 个不同的子字符串。

部分分数

对于满足 s|s| 5050 的测试集,将获得 200200 分的部分分数。

输入

输入以以下格式从标准输入获得:

ss KK

输出

打印第 KK 个按字典序最小的子字符串。

示例输入1

aba
4

示例输出1

b

ss 有五个子字符串:ababbaaba。其中,我们应该打印第四个最小的子字符串,即 b。请注意,我们不会将 a 计算两次。

示例输入2

atcoderandatcodeer
5

示例输出2

andat

示例输入3

z
1

示例输出3

z