Олимпиадный тренинг

Задача . B. Студенты в вагоне


В вагоне есть \(n\) последовательных мест. Каждое место либо пустое, либо занято пассажиром.

Университетская команда на олимпиаду состоит из \(a\) студентов-программистов и \(b\) студентов-спортсменов. Определите наибольшее количество студентов из всех \(a+b\), которых можно посадить в вагон так, чтобы никакой студент-программист не сидел рядом со студентом-программистом и никакой студент-спортсмен не сидел рядом со студентом-спортсменом. Иными словами, не должно быть двух подряд идущих мест, на которых сидят два студента-спортсмена или два студента-программиста.

Считайте, что изначально занятые пассажирами места заняты членами жюри (которые, очевидно, вообще не являются студентами).

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

В первой строке следует три целых числа \(n\), \(a\) и \(b\) (\(1 \le n \le 2\cdot10^{5}\), \(0 \le a, b \le 2\cdot10^{5}\), \(a + b > 0\)) — общее количество мест в вагоне, количество студентов-программистов и количество студентов-спортсменов.

Во второй строке следует строка длины \(n\), состоящая из символов «.» и «*». Точка означает, что соответствующее место свободно. Звездочка означает, что соответствующее место занято членом жюри.

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

Выведите наибольшее количество студентов, которых можно посадить в вагон так, чтобы никакой студент-программист не сидел рядом со студентом-программистом и никакой студент-спортсмен не сидел рядом со студентом-спортсменом.

Примечание

В первом примере можно посадить всех студентов, например, следующим образом: *.AB*

Во втором примере можно посадить четырех студентов, например, следующим образом: *BAB*B

В третьем примере можно посадить семерых студентов, например, следующим образом: B*ABAB**A*B

Буквой A обозначены студенты-программисты, а буквой B — студенты-спортсмены.


Примеры
Входные данныеВыходные данные
1 5 1 1
*...*
2
2 6 2 3
*...*.
4
3 11 3 10
.*....**.*.
7
4 3 2 3
***
0

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя