Задача №114089. Шарики

Рассмотрим полоску из \(n\) клеточек. На каждой клетке написана какая-то буква латинского языка.

Также каждая клетка изначально содержит \(1\) шарик. Вы последовательно проделываете \(q\) операций следующего вида:

  • "\(c_i\) \(d_i\)" — сдвинуть все шарики, находящиеся в клетке с буквой \(c_i\) в сторону \(d_i\) (\(d_i\) равно или "R" или "L")

Все шарики сдвигаются одновременно. Если какой-то шарик пытается сдвинутся налево из клетки номер \(1\) или направо из клетки \(n\), то он исчезает. Выясните сколько всего останется шариков после выполнения всех операций.

Входные данные

Первая строка содержит целые числа \(n\) и \(q\) (\(1 \le n, q \le 200\,000\)) — длину полоски и количество операций. Следующая строка содержит строку \(s\) длины \(n\), состоящую только из заглавных букв латинского алфавита и задающую буквы в каждой клетке полоски. Оставшиеся \(q\) строк задают операции в виде

  • "\(c_i\) \(d_i\)" — где \(c_i\) является заглавной буквой латинского алфавита, а \(d_i\) или "L", или "R"

Выходные данные

Выведите одно число — количество оставшихся шариков.

Примеры
Входные данные
4 3
BADB
B R
A L
B L
Выходные данные
1
Сдать: для сдачи задач необходимо войти в систему