文章
28
粉丝
0
获赞
266
访问
6.5k
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
//计数函数
int count(string s, int m) {
if(s.size() < m) return 0;
else if(s.size() == m) return 1;
else {
int cnt = 0, len = m;
while(len <= s.size()) {
cnt += s.size() - len + 1;
len++;
}
return cnt;
}
}
int main() {
int n, m;
cin >> n >> m;
string zero_one;
cin >> zero_one;
vector<string> str;
int i = 0;
//提取连续的1作为一个字符串放入str数组
while(i < zero_one.size()) {
if(zero_one[i] == '1') {
string temp;
while(i < zero_one.size() && zero_one[i] == '1')
temp += zero_one[i++];
str.push_back(temp);
}
i++;
}
//计算结果
int res = 0;
for(int i = 0; i < str.size(); i++)
res += count(str[i],m);
cout << res;
return 0;
}
登录后发布评论
暂无评论,来抢沙发