P9281 [AGM 2023 资格赛] Nădlac

题目描述

在草原上,一群绵羊排成一队。这些绵羊的毛共有 $7$ 种颜色,按照你对颜色喜欢的程度排列分别是: $$ red>orange>yellow>green>blue>indigo>violet$$ 接下来会发生以下三种事件: 1:有若干个绵羊依次排到了队尾。 2:给定一个颜色序列 $T$,找到目前的绵羊序列中,所有本质不同的子串中按照喜欢程度写成数字(比如 red 是 $7$,violet 是 $1$),字典序小于等于 $T$ 中字典序最大的一个子串。 3:给定一个颜色集合 $C$,求目前的绵羊序列中,本质不同的只由 C 中的颜色组成的子串的长度的和。

输入格式

输入的第一行将包含一个整数 $Q (1≤Q≤500)$,表示发生的事件数。 接下来的 $Q$ 行每行先输入一个数表示事件的种类,然后: 1:输入绵羊序列 $S(1≤|S|≤10^5)$。 保证 $∑|S|≤10^5$。 2:输入颜色序列 $T(1≤|T|≤10^5)$。 3:输入颜色集合 $C(1≤|C|≤7)$。 其中每个颜色由单词的第一个字母的大写形式表示。

输出格式

对每个事件 2 与事件 3 输出答案。