#LX0003. 找子序列【2024五一模拟赛】

找子序列【2024五一模拟赛】

题目描述

小明有一个字符串SS,这个字符串的长度是mm,只包含英文小写字母。

小明想从中拿一个子序列出来。

子序列的定义是:从这个字符串中,从左到右,选一些位置,然后把他们按顺序拼起来得到的字符串。
比如S=abcda,那么aca,ada,bda,abcda这些都是S的子序列,但cb,acdb这些都不是。

问:小明是否可以拿出所有长度为nn,且只包含前kk种英文小写字母的子序列?

输入格式

第一行输入n,k,mn,k,m

第二行输入字符串SS

输出格式

如果可行,输出YES,否则,输出NO,然后在下一行输出任意一个他无法拿出的字符串即可。

样例输入 #1

2 2 4
abba

样例输出 #1

YES

样例输入 #2

3 3 10
aabbebabab

样例输出 #2

NO
ccc

数据范围

对于20%的数据:保证k2,n10,m1000k\leq 2,n\leq 10,m\leq 1000

对于50%的数据:保证k2,n20m105k\leq 2,n\leq 20,m\leq 10^5

对于100%的数据:保证1m105,1n,k261\leq m\leq 10^5,1\leq n,k\leq 26