CF610E.Alphabet Permutations

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given a string ss of length nn , consisting of first kk lowercase English letters.

We define a cc -repeat of some string qq as a string, consisting of cc copies of the string qq . For example, string "acbacbacbacb" is a 44 -repeat of the string "acb".

Let's say that string aa contains string bb as a subsequence, if string bb can be obtained from aa by erasing some symbols.

Let pp be a string that represents some permutation of the first kk lowercase English letters. We define function d(p)d(p) as the smallest integer such that a d(p)d(p) -repeat of the string pp contains string ss as a subsequence.

There are mm operations of one of two types that can be applied to string ss :

  1. Replace all characters at positions from lil_{i} to rir_{i} by a character cic_{i} .
  2. For the given pp , that is a permutation of first kk lowercase English letters, find the value of function d(p)d(p) .

All operations are performed sequentially, in the order they appear in the input. Your task is to determine the values of function d(p)d(p) for all operations of the second type.

输入格式

The first line contains three positive integers nn , mm and kk ( 1<=n<=200000,1<=m<=20000,1<=k<=101<=n<=200000,1<=m<=20000,1<=k<=10 ) — the length of the string ss , the number of operations and the size of the alphabet respectively. The second line contains the string ss itself.

Each of the following lines mm contains a description of some operation:

  1. Operation of the first type starts with 11 followed by a triple lil_{i} , rir_{i} and cic_{i} , that denotes replacement of all characters at positions from lil_{i} to rir_{i} by character cic_{i} ( 1<=li<=ri<=n1<=l_{i}<=r_{i}<=n , cic_{i} is one of the first kk lowercase English letters).
  2. Operation of the second type starts with 22 followed by a permutation of the first kk lowercase English letters.

输出格式

For each query of the second type the value of function d(p)d(p) .

输入输出样例

  • 输入#1

    7 4 3
    abacaba
    1 3 5 b
    2 abc
    1 4 4 c
    2 cba
    

    输出#1

    6
    5
    

说明/提示

After the first operation the string ss will be abbbbba.

In the second operation the answer is 66 -repeat of abc: ABcaBcaBcaBcaBcAbc.

After the third operation the string ss will be abbcbba.

In the fourth operation the answer is 55 -repeat of cba: cbAcBacBaCBacBA.

Uppercase letters means the occurrences of symbols from the string ss .

首页