专栏文章
CF165C解题报告
个人记录参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @miqly46j
- 此快照首次捕获于
- 2025/12/04 06:57 3 个月前
- 此快照最后确认于
- 2025/12/04 06:57 3 个月前
Solution
比较套路
当我们扫到位置时,设当前的个数为,对答案的贡献就是的数量,用一个记录就好了
注意初始化
当我们扫到位置时,设当前的个数为,对答案的贡献就是的数量,用一个记录就好了
注意初始化
Code
CPP#include<bits/stdc++.h>
using namespace std;
#define int long long
map<int,int> mp;
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);
int k;string s;
cin>>k>>s;
int n=s.size();s=' '+s;
int sum=0;
int ans=0;
mp[0]=1;
for(int i=1;i<=n;i++){
if(s[i]=='1') sum++;
ans+=mp[sum-k];
mp[sum]++;
}
cout<<ans<<endl;
return 0;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...