测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A11592. Phone Numbers

编程题 普及/提高-

题目描述

And where the are the phone numbers?

You are given a string $s$ consisting of lowercase English letters and an integer $k$ . Find the lexicographically smallest string $t$ of length $k$ , such that its set of letters is a subset of the set of letters of $s$ and $s$ is lexicographically smaller than $t$ .

It's guaranteed that the answer exists.

Note that the set of letters is a set, not a multiset. For example, the set of letters of abadaba is ${a,b,d}$ .

String $p$ is lexicographically smaller than string $q$ , if $p$ is a prefix of $q$ , is not equal to $q$ or there exists $i$ , such that $p_{i}<q_{i}$ and for all $j<i$ it is satisfied that $p_{j}=q_{j}$ . For example, abc is lexicographically smaller than abcd , abd is lexicographically smaller than abec, afa is not lexicographically smaller than ab and a is not lexicographically smaller than a.

输入格式

The first line of input contains two space separated integers $n$ and $k$ ( $1<=n,k<=100000$ ) — the length of $s$ and the required length of $t$ .

The second line of input contains the string $s$ consisting of $n$ lowercase English letters.

输出格式

Output the string $t$ conforming to the requirements above.

It's guaranteed that the answer exists.

输入输出样例

输入 #1
3 3
abc
输出 #1
aca
输入 #2
3 2
abc
输出 #2
ac
输入 #3
3 3
ayy
输出 #3
yaa
输入 #4
2 3
ba
输出 #4
baa

说明/提示

In the first example the list of strings $t$ of length 3, such that the set of letters of $t$ is a subset of letters of $s$ is as follows: aaa, aab, aac, aba, abb, abc, aca, acb, $...$ . Among them, those are lexicographically greater than abc: aca, acb, $...$ . Out of those the lexicographically smallest is aca.
上一题 去做题 下一题