花空烟水流
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

少年锦时,枝头红也比不过山楂串;云舒云卷,飞起个凤翎彩毽。

韶华易逝,转眼已不复当年。偶然间看见稻草上扎满的冰糖葫芦,才能引起几分梦回遐思

此刻的你,再次来到记忆中的小摊前。这里有一串长长的山楂串。你不愿意在过去逗留,想要串起一个与以往完全不同的冰糖葫芦串,作为你的此刻将它放入回忆。

过去的冰糖葫芦串可以看做一个长度为 n 、由 m 种小写字符组成的字符串 s 。你要找到一个最短的字符串 t ,使得 t 不是 s任何一个子串t 只能由 s 中出现过的字符组成,且 t 的字典序要求最小。

我们把字符串中任意个连续的字符组成的子序列称为该字符串的子串。例如:对于字符串"abc","a"、"ab"、"bc"为它的一个子串,"ac"、"aa"则不是。

输入描述:

输入共两行。

第一行,两个整数 n,m ,分别表示字符串长度与字符串包含的字符种类。()。

第二行,一个小写字符串 s

输出描述:

输出共一行。表示满足题目要求的答案 t
示例1

输入

复制
6 3
aabbac

输出

复制
bc

说明

对于字符串"aabbac",长度为 1 的子串全部出现过,长度为 2 的子串中,"aa"、"ab"、"ac"、"ba"、"bb"也都出现了,所以答案为"bc"。