首页 > 小AA的数列
头像 19-hanhan
发表于 2020-05-26 12:19:09
痛苦,悲伤,贼难orz 题目 题目描述: 小AA找到了一个数列,她想要知道这个数列中所有长度为偶数的区间异或和之和 。 后来她发现这个问题太简单了,于是她加了一个限制,要求区间长度在[L,R]之间, 然后她就不会了。。。 请你告诉她问题的答案。 输入描述: 第一行三个数 展开全文
头像 shyyhs
发表于 2021-01-08 21:21:33
前言: 明天英语+线代,我0基础上去能过吗?显然是可以的(希望明天运气好!!!) 思路: 会按位运算这题就能过,但是我连位运算怎么前缀和都给忘了...菜的离谱,偷瞄了一下别人的博客emmm秒懂了. 代码: #include <bits/stdc++.h> using namespace 展开全文
头像 HBlade
发表于 2020-05-23 15:18:59
感想:真的不会做这种题,虽然已经想到了异或和这种题要按位求贡献,但是偶数还有区间这个问题想不出来怎么解决。后来看了别人的题解,想了好久才终于想明白怎么一回事了。 思路:首先,一般异或和这种题都是按位求贡献这个方向是没错的。此时要算一个区间内的异或和的这一位是否有贡献(也就是区间异或和的这一位是否为1 展开全文
头像 TheOnlyMan
发表于 2021-09-15 20:18:19
链接:小AA的数列 题意:求长度在 区间内的偶数长度区间异或和之和。 题解:显然区间异或和的和可以按为拆开分开计算,最后在累加上去(因为每一位异或时互不干扰)。现在考虑怎么把范围限制在 中。可以发现,我们容易求出大于某个数的长度的答案,所以答案就是 (数位 计算区间答案的思想)。递推时注意 展开全文
头像 zzugzx
发表于 2020-05-22 13:42:03
题目链接 题意:题解: AC代码 /* Author:zzugzx Lang:C++ Blog:blog.csdn.net/qq_43756519 */ #include<bits/stdc++.h> using namespace std; #defi 展开全文
头像 Kur1su
发表于 2020-05-31 14:30:33
Description 小AA找到了一个数列,她想要知道这个数列中所有长度为偶数的区间异或和之和 。后来她发现这个问题太简单了,于是她加了一个限制,要求区间长度在[L,R]之间,然后她就不会了。。。请你告诉她问题的答案。 Solution  异或问题优先考虑二进制位,对于这个问题,我们需要考虑偶数长 展开全文
头像 平凡的小白
发表于 2020-05-25 22:40:37
题意: 给定一个数列,找出这个数列中长度为偶数的连续子列的异或和并且要求长度为偶数的同时满足在到之间最后结果 思路: 异或一般是是枚举每一个数每个二进制位的贡献1.这道题需要考虑的是一个连续子列,我们可以维护一个前缀和 cin>>a[i],a[i]^=a[i-1];2.那么枚举每个 展开全文
头像 陈柯蒙
发表于 2020-05-23 21:02:25
又是求异或和的和的常见套路——按位计算,即计算二进制中每一位的贡献。 需要注意的是,题目要求的不仅要区间长度在[L,R],而且区间长度必须是偶数(因为这个debug了好久qwq) 我们先来简化下题目。 我们假设只考虑一个二进制位x,并且区间长度也可以为奇数,那么这个怎么做呢? 很简单,我们为了方便处 展开全文
头像 ThinkofBlank
发表于 2020-05-22 14:03:28
又是求异或和的和的常见套路——按位计算,即计算二进制中每一位的贡献。 需要注意的是,题目要求的不仅要区间长度在[L,R],而且区间长度必须是偶数(因为这个debug了好久qwq) 我们先来简化下题目。 我们假设只考虑一个二进制位x,并且区间长度也可以为奇数,那么这个怎么做呢? 很简单,我们为了方便处 展开全文
头像 与人无语
发表于 2020-05-31 07:50:32
这一题我是只想到暴力的 t了后面想到了以前写的一些题就算了二进制的前缀和但还是t了 于是在学习了一番博客后 我学会了我们先统计二进制前缀和 然后在统计前缀和的奇偶数的前缀和 因为要统计长度为偶数所有是以二一跳的前缀和 有了这以后 我们枚举左端点 就可以O(1)求右端点以及贡献对于范 展开全文