Codeforences # 336 B B. Hamming Distance Sum
来源:互联网 发布:药品网络市场监管 编辑:程序博客网 时间:2024/06/05 15:43
题目传送门
//题意: 给你一个模板串a和匹配串b,|a|<=|b|<=2e5,两个串都是01串。 于是,a串之于b串的匹配位置,就有|b|-|a|+1种 我们想问,对于所有的匹配位置,会产生的匹配差异总和是多少。 所以匹配差异,是指—— 比如模板串是0011,匹配0101,对于所有'0' match '1' 或者'1' match '0 ', 都产生了1的匹配差异。即这个样例产生了2的匹配差异。 //解题思路:我们直接枚举a串的每个位置,它会对应出b串的一个匹配区间。 我们只要查看区间中有多少字符与其不同即可。 这个可以利用前缀和简单实现。//复杂度:O(n+m)
//AC代码如下://Created Author: just_sort//Created Time : 2016/1/20//Created File : B. Hamming Distance Sum#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;#define ll long longchar s1[200010],s2[200010];int dp[200010][2];int main(){ scanf("%s",s1); scanf("%s",s2); int len1 = strlen(s1); int len2 = strlen(s2); for(int i=0; i<len2; i++) { dp[i][1] = dp[i-1][1]+(s2[i]=='1'?1:0); dp[i][0] = dp[i-1][0]+(s2[i]=='0'?1:0); } ll ans=0; for(int i=0; i<len1; i++) { int l = i;//1 int r = len2-(len1-i);//4 if(s1[i]=='1')ans+=dp[r][0]-dp[l-1][0]; else ans+=dp[r][1]-dp[l-1][1]; } printf("%I64d\n",ans); return 0;}
0 0
- Codeforences # 336 B B. Hamming Distance Sum
- Codeforce Round #336--B. Hamming Distance Sum
- cf#336-B-Hamming Distance Sum
- Codeforces Round #336 (Div. 2)B. Hamming Distance Sum
- Codeforces Round #336 (Div. 2) B. Hamming Distance Sum
- Codeforces Round #336 (Div. 2) B. Hamming Distance Sum
- cf#336-B-Hamming Distance Sum 前缀和
- codeforces 608B Hamming Distance Sum
- CodeForces 608B Hamming Distance Sum
- Codeforces 608B Hamming Distance Sum
- CodeForces 608B Hamming Distance Sum
- codeforces 608B Hamming Distance Sum 部分和+思路转换
- CodeForces 608 B. Hamming Distance Sum(水~)
- CodeForces 608B Hamming Distance Sum(前缀和)
- 【Codeforces 608B】Hamming Distance Sum(前缀和)
- Codeforces Round #336 (Div. 2) 608B Hamming Distance Sum(dp)
- Codeforces Round #336 (Div. 2) B. Hamming Distance Sum (预处理)
- B. Center Alignment codeforences
- 统计回文字符串
- ScaleGestureDetector接收双击手势问题
- 使用geohash实现经纬度范围内搜索
- Android 四大大图片缓存(Imageloader,Picasso,Glide,Fresco)原理、特性对比
- SQL Server 2008查询IP地址方法
- Codeforences # 336 B B. Hamming Distance Sum
- [图像] 金字塔模型
- jquery easyui-accordion做的动态菜单
- 抽象
- Android中为何会显示隐藏的UI?
- DataGrid 数据表格
- 多线程
- 游子之于流年,一如乱红之于微风
- 中国剩余定理(除数不互质)