EduBrick

Различные буквы на отрезке

3000 мс · 256 МБ · всё или ничего

Дана строка из строчных латинских букв. Запросы: 1 l r c — заменить все символы на отрезке [l,r][l, r] буквой cc; 2 l r — вывести количество различных букв на отрезке.

Формат ввода

В первой строке — числа nn и mm (1≤n,m≤1051 \le n, m \le 10^5). Во второй — строка длины nn. Далее mm запросов.

Формат вывода

На каждый запрос второго вида выведите количество различных букв.

Примеры

ввод
6 4
abcabc
2 1 6
1 2 5 z
2 1 6
2 2 5
вывод
3
3
1
ввод
1 1
q
2 1 1
вывод
1
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.