codeforces 1186C Vus the Cossack and Strings
题目链接:https://codeforc.es/contest/1186/problem/C
题目大意:xxxxx(自认为讲不清。for instance)
例如:a="01100010" b="00110"。
我们把a截到b的长度就有4个字串。
a1=01100 a2=11000 a3=10001 a4=00010
f(s1,s2)表示是s1与s2异或后1的个数
题目要求每个a子串与b的f(ai,b)的值为偶数的个数。
ps:暑假第一天,签到写个稍微简单一点的题
思路:
如果在例子中b串是"00000"。那么题目变为求ai的1的个数为偶数的个数
这里我们用前缀和来求就非常好了。
a1= 01100 符合题意
a2= 11000 符合题意
a3= 10001 符合题意
a4= 00010 不符合题意
前缀和应该会吧。O(1)就可以知道和。然后判断一下奇偶就好了
但是b串不一定是"00000"
这时我们看一下如果b="00100"会怎么样?
a1= 01000 不符合题意
a2= 11100 不符合题意
a3= 10101 不符合题意
a4= 00110 符合题意
所以,我们可以得出当b串的1的个数为奇数是我们求a子串的1的个数为奇数的个数
反之,求偶数的个数
愉快的贴代码^-^
#include <bits/stdc++.h>
using namespace std;
#define N 1000100 int x[N];
int ser=;
signed main()
{
ios::sync_with_stdio(false);
string s,ss;
cin>>s>>ss; for(auto&c:s){
int a=(c=='');
x[++ser]=a;
x[ser]+=x[ser-];
} int b=;
for(auto&c:ss){
b^=(c=='');
}
int Ans=;
for(int i=ss.size();i<=ser;i++){
//cout<<x[i]<<" "<<x[i-ss.size()]<<endl;
Ans+=!((x[i]-x[i-ss.size()])&)^b;
}
cout<<Ans;
return ;
}
codeforces 1186C Vus the Cossack and Strings的更多相关文章
- Vus the Cossack and Strings(Codeforces Round #571 (Div. 2))(大佬的位运算实在是太强了!)
		C. Vus the Cossack and Strings Vus the Cossack has two binary strings, that is, strings that consist ... 
- CodeForces - 1186 C. Vus the Cossack and Strings (异或)
		Vus the Cossack has two binary strings, that is, strings that consist only of "0" and &quo ... 
- Codeforces F. Vus the Cossack and Numbers(贪心)
		题目描述: D. Vus the Cossack and Numbers Vus the Cossack has nn real numbers aiai. It is known that the ... 
- C	 Vus the Cossack and Strings  ( 异或  思维)
		题意 : 给你两个只包含 0 和 1 的字符串 a, b,定义函数 f ( A, B ) 为 字符串A和字符串B 比较 存在多少个位置 i 使得 A[ i ] != B[ i ] ,例如 f(0011 ... 
- Codeforces 1186F - Vus the Cossack and a Graph 模拟乱搞/欧拉回路
		题意:给你一张无向图,要求对这张图进行删边操作,要求删边之后的图的总边数 >= ceil((n + m) / 2), 每个点的度数 >= ceil(deg[i] / 2).(deg[i]是 ... 
- @codeforces - 1186F@ Vus the Cossack and a Graph
		目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定一个 n 点 m 边的图(n, m<=10^6),记第 ... 
- Codeforces Round #571 (Div. 2)-D. Vus the Cossack and Numbers
		Vus the Cossack has nn real numbers aiai. It is known that the sum of all numbers is equal to 00. He ... 
- E. Vus the Cossack and a Field (求一有规律矩形区域值)  (有一结论待证)
		E. Vus the Cossack and a Field (求一有规律矩形区域值) 题意:给出一个原01矩阵,它按照以下规则拓展:向右和下拓展一个相同大小的 0 1 分别和原矩阵对应位置相反的矩阵 ... 
- 『Codeforces 1186E 』Vus the Cossack and a Field (性质+大力讨论)
		Description 给出一个$n\times m$的$01$矩阵$A$. 记矩阵$X$每一个元素取反以后的矩阵为$X'$,(每一个cell 都01倒置) 定义对$n \times m$的矩阵$A$ ... 
随机推荐
- DP | Luogu P1466 集合 Subset Sums
			题面:P1466 集合 Subset Sums 题解: dpsum=N*(N+1)/2;模型转化为求选若干个数,填满sum/2的空间的方案数,就是背包啦显然如果sum%2!=0是没有答案的,就特判掉F ... 
- luoguP3723 HNOI2017 礼物
			链接 首先,两个手环增加非负整数亮度,等于其中一个增加一个整数亮度,可以为负. 令增加量为\(x\),旋转以后的原数列为,那么在不考虑转圈圈的情况下,现在的费用就是: \[\sum_{i=1}^n\l ... 
- jmeter请求时出现no cookies
			现象: 解决步骤: 1.添加http cookie管理器 2.检查http信息头管理器是否正确 
- C#任务调度——LimitedConcurrencyLevelTaskScheduler
			这是参考大佬分享的代码写的有问题请提出指正,谢谢. using Serilog; using System; using System.Collections.Generic; using Syste ... 
- 安装caffe碰到的坑(各种.so未找到)
			./include/caffe/common.hpp:4:32: fatal error: boost/shared_ptr.hpp: 没有那个文件或目录 所有类似于上面的错误,都可以用如下格式来解决 ... 
- 汇总apply()、call()、bind()用法详解
			先看明白下面: 例 1 obj.objAge; // 17 obj.myFun() // 小张年龄 undefined 例 2 shows() // 盲僧 比较一下这两者 this 的差别,第一个打印 ... 
- springmvc请求参数异常统一处理,结合钉钉报告信息定位bug位置
			参考之前一篇博客:springmvc请求参数异常统一处理 1.ExceptionHandlerController package com.oy.controller; import java.tex ... 
- linux 系统时间 硬件时间
			Linux时钟分为系统时钟(System Clock)和硬件时钟(Real Time Clock,简称RTC).系统时钟是指当前Linux Kernel中的时钟:而硬件时钟则是主板上由电池供电的时钟, ... 
- html button标签 语法
			html button标签 语法 button标签怎么用? 作用:定义一个按钮. 语法:<button type="button">按钮</button> ... 
- JAVA支持HTTP断点续传
			第一点:Java代码实现文件上传 FormFile file = manform.getFile(); String newfileName = null; String newpathname = ... 
