Виктория очень часто обижается на Лёшу. Обижалась она и в этот раз. Известно, что Лёша и Виктория гуляли n минут. И в каждую из этих минут Виктория была либо обижена, либо не обижена на Лёшу. Так как все мы программисты, то будем обозначать эти n минут состояния Виктории как n-битную строку. Более формально i-й бит строки будет равен единице, если она обижалась в i-ю минуту, иначе этот бит будет равен нулю.
Лёша утверждает Виктории, что она слишком часто на него обижается. Он любит всё доказывать. Поэтому Лёша хочет посчитать количество таких отрезков времени, на которых её обида была строго больше, чем число X. За отрезок может отвечать пара чисел (l, r), где 1 ≤ l ≤ r ≤ n. Обида Виктории на отрезке — это отношение количества минут, которые она обижалась, к общему количеству минут на отрезке. Более формально обида Виктории на отрезке (l, r) равна
, где cnt1 — количество единиц на отрезке (l, r) битовой строки, а cntall — общее количество символов с позиции l по r в битовой строке.
Помогите Лёше доказать Виктории, что обид слишком много!
Первая строка входных данных содержит описание числа X в виде двух целых чисел P и Q разделенных пробелом (0 ≤ P ≤ 1000, 1 ≤ Q ≤ 1000, P ≤ Q), то есть X равно
.
Следующая строка входных данных содержит строку s состоящую из символов '0' и '1'. Длина строки положительная и не превышает 200 000.
Выведите единственное целое число — количество отрезков (l, r), на которых обида Виктории строго больше, чем X.
3 10
10110
13
9 10
010100101101
7
| Название |
|---|


