会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
c语言源码
Codeforces Round #112 (Div. 2) C Another Problem on Strings
codeforces上的很多题都需要好的想法才能做。
#include<iostream> #define maxn 10000005 using namespace std; int n,i,k,s[maxn],sum[maxn],a[maxn]; // a[i]记录第i个是0或1,s[i]记录第前i个有几个1,sum[i]表示从头开始产生i个1的方法数 char st[maxn]; long long ans; int main() { cin >> k >> st; for(i=1;st[i-1]!=0;++i) a[i]=st[i-1]-48,s[i]=s[i-1]+a[i]; n=i-1; sum[0]++; for(i=1;i<=n;++i) { if (s[i]>=k) ans+=sum[s[i]-k]; sum[s[i]]++; } cout << ans << endl; return 0; }
posted on
2012-03-17 13:17
c语言源码
阅读(
178
) 评论(
0
)
编辑
收藏
举报
会员力量,点亮园子希望
刷新页面
返回顶部
导航
博客园
首页
新随笔
联系
订阅
管理
公告