[SHOI2013] 阶乘字符串

题目背景

shoi2013d1t2 (本题卡常数注意)

题目描述

给定一个由前 $n$ 个小写字母组成的串 $S$。串 $S$ 是阶乘字符串当且仅当前 $n$ 个小写字母的全排列(共 $n!$ 种)都作为的子序列(可以不连续)出现。 由这个定义出发,可以得到一个简单的枚举法去验证,但是它实在太慢了。所以现在请你设计一个算法,在 $1$ 秒内判断出给定的串是否是阶乘字符串。

输入输出格式

输入格式


输入第 $1$ 行一个整数 $T$,表示这个文件中会有 $T$ 组数据。 接下来分 $T$ 个块,每块 $2$ 行: - 第 $1$ 行一个正整数 $n$,表示 $S$ 由前 $n$ 个小写字母组成。 - 第 $2$ 行一个字符串 $s$。

输出格式


对于每组数据,分别输出一行。每行是 `YES` 或者 `NO`,表示该数据对应的串 $S$ 是否是阶乘字符串。

输入输出样例

输入样例 #1

2
2
bbaa
2
aba

输出样例 #1

NO
YES

说明

第一组数据中,`ab` 这个串没有作为子序列出现。 ![](https://cdn.luogu.com.cn/upload/image_hosting/9zs871wl.png)