小红的 01 消除
题号:NC276244
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

\,\,\,\,\,\,\,\,\,\,小红有一个长度为 n 且仅由 '\rm 0' 和 '\rm 1' 构成的字符串 s,她有以下三种操作:
\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,● 删除任意一个子串 "11",例如 "01101" 操作之后变成 "001";
\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,● 删除任意一个子串 "01",例如 "01101" 操作之后变成 "101" 或者 "011";
\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,● 删除任意一个子串 "00",例如 "00100" 操作之后变成 "100" 或者 "001" 。
\,\,\,\,\,\,\,\,\,\, 小红至多可以执行操作一 x 次、操作二 y 次、操作三 z 次,问小红最多可以执行多少次操作二。

输入描述:

\,\,\,\,\,\,\,\,\,\,第一行输入一个整数 n\ (1 \leq n \leq 10^5) 代表字符串的长度 。
\,\,\,\,\,\,\,\,\,\,第二行输入一个长度为 n 且仅由 '\rm 0' 和 '\rm 1' 构成的字符串 s 。
\,\,\,\,\,\,\,\,\,\,第三行输入三个整数 x, y, z\ (0 \leq x, y, z \leq 10^5) 代表各个操作至多执行的次数。

输出描述:

\,\,\,\,\,\,\,\,\,\,在一行上输出一个整数,代表小红最多可以执行多少次操作二。
示例1

输入

复制
7
1110011
3 3 3

输出

复制
2

说明

\,\,\,\,\,\,\,\,\,\,先执行一次操作一,得到 "10011";再执行一次操作二,得到 "101";再执行一次操作二,得到 "1"。
\,\,\,\,\,\,\,\,\,\,最多可以执行两次操作二。
示例2

输入

复制
6
110010
0 1 0

输出

复制
1