아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Революция

시간 제한2초메모리 제한1024 MB

요약
0으로 시작해 1로 끝나며 내부에 (k-1)-좋은 부분 구간을 포함하는 구간의 개수를 k에 대해 세는 문제.
난이도

보통10점 중 6점

유형
동적 계획법, 조합론, 누적 합
정답자
아직 제출이 없습니다

문제

Решающая битва Нео и Смита назначена на 19:00, но из-за сбоя системы Смит-Оракул не знает, сколько сейчас точно времени и поэтому опаздывает. Нео в это время решил поизучать оставшихся Смитов, стоящих в ряд.

Известно, что Агент Смит, превращая кого-либо в себя не меняет код полностью. Поэтому, изучая исходники любого Смита, можно сказать, был человек перед превращением мужчиной или женщиной. Нео вспомнил как тяжело на корабле, когда мужчин гораздо больше, чем женщин, и решил вычислить такой подотрезок, который, по мнению Нео, kk-хороший. А Нео считает, что отрезок kk-хороший, если он начинается со Смита-женщины и кончается Смитом-мужчиной и содержит внутри (k−1)(k-1)-хороший подотрезок. 00-хороший отрезок естесственно пустой (что же плохого, если никого нет). Мы не будем задаваться вопросом, откуда у Нео такие представления о хорошем (он же Избранный, ему видней), а попросим вас сказать, сколько же строго kk-хороших отрезков. (более хорошие не считать: слишком хорошо уже плохо).

입력

В самой первой строке написано число mm --- число тестов. В каждом тесте в первой строке заданы числа nn и kk (2≤n≤1000002 \le n \le 100000, 1≤k≤n/21 \le k \le n/2), где nn --- количество агентов Смитов в ряду. Во второй строке заданы nn чисел a_ia\_i (0≤a_i≤10 \le a\_i \le 1), где a_i=0a\_i = 0, если Смит был женщиной, и a_i=1a\_i = 1, если Смит был мужчиной. Суммарное количесвто агентов во входном файле не превышает 100000

출력

Для каждого теста выведите количество kk-хороших отрезков.

예제1

  1. 예제 1

    입력
    2
    3 1
    110
    3 1
    011
    
    예상 출력
    0
    2