【每日一题】5月25日题目精讲

题号 NC14414
名称 小AA的数列
来源 Wannafly挑战赛4
戳我进入往期每日一题汇总贴~
往期每日一题题单

图片说明

如果你在题库做题时遇到了喜欢的题目,欢迎推荐给邓老师~ 点击查看详情

题解

异或有一个很快乐的一点就是,异或零什么都不会发生,异或偶数个1是0,异或奇数个1是1,于是我们就可以按位计算1的个数(奇偶性)了。
目标是求区间异或之和,所以我们考虑统计前缀,即前i个数中每一位为1的个数,然后算出所有符合条件的子区间当前位有多少个1就行了。(这是套路啊套路)
先不考虑区间长度为偶数这个限制:
显然枚举区间两个端点要超时,我们看能不能只枚举一个端点:
(具体分析问题的时候只需要考虑第x位,x相当于一个循环变量)
先枚举左端点l,每个和他1的个数的前缀和奇偶性不同的右端点,都会对答案有的贡献(在第x位贡献一个1)。
所以用一个数组cnt[j][0/1]来统计前缀和sum的第j个后缀(sum[j]到sum[n])里面1的个数为奇数/偶数的个数就行。
题面要求区间长度必须为偶数怎么办?
cnt[j]计算的时候不要从cnt[j+1]来,从cnt[j+2]来,即跳过会让区间长度变成奇数的点,这样就可以啦。

看完邓老师的题解,记得自己去做题提高呀~
欢迎各位大佬来做题写题解,也欢迎大家踊跃在当日讨论贴中提问!

活动奖励:

在牛客博客中写出题解,并回复地址
审核通过可获得(依据题目难度和题解的内容而定)

本道题目6月1日中午12:00之前写的题解有获得牛币资格~

.牛币兑换中心

牛客博客开通方式

  1. 如何开通牛客博客:https://www.nowcoder.com/discuss/202952
  2. 如何使用博客搬家功能:进入博客--->设置--->底部博客搬家
  3. 如果你对牛客博客有任何意见或建议:牛客博客意见反馈专贴
全部评论
https://blog.nowcoder.net/n/9114058d80954f418bb97be9b861459e
2 回复 分享
发布于 2020-05-22 21:55
https://blog.nowcoder.net/n/f0c66c74302943ed96a0188e75ed617e
1 回复 分享
发布于 2020-05-23 21:03
https://blog.nowcoder.net/n/392a75adddc04c9aadb9d98368bfe5f2
1 回复 分享
发布于 2020-05-23 15:19
https://blog.nowcoder.net/n/b7efe069ad58453d927e6800f3361bda
1 回复 分享
发布于 2020-05-23 14:25
https://blog.nowcoder.net/n/68554410a223484bad74416b7f0375cd
1 回复 分享
发布于 2020-05-22 20:16
https://blog.nowcoder.net/n/79a3072eb02c4dfb85e25d483c24a56e
1 回复 分享
发布于 2020-05-22 18:51
https://blog.nowcoder.net/n/665bad31179f4b82bb9f0702910ba15c
1 回复 分享
发布于 2020-05-22 17:41
https://blog.nowcoder.net/n/b1816a1594eb41389e78659f45467d06
1 回复 分享
发布于 2020-05-22 16:01
https://blog.nowcoder.net/n/e93b8f2c9078436ca59c743018f81900
1 回复 分享
发布于 2020-05-22 15:48
https://blog.nowcoder.net/n/4dacd8e372de4199a30442b4eee1849a
1 回复 分享
发布于 2020-05-22 14:03
2
1 回复 分享
发布于 2020-05-22 11:45
https://blog.nowcoder.net/n/f7c3452fa37645728f4bddd3a9b64a34
点赞 回复 分享
发布于 2020-05-31 14:30
https://blog.nowcoder.net/n/b35b67ab19e44742b8020fafd0bf602e
点赞 回复 分享
发布于 2020-05-31 07:51
https://blog.nowcoder.net/n/74beaaf9368c486f89c98c3fe39650c9
点赞 回复 分享
发布于 2020-05-30 08:54
https://blog.nowcoder.net/n/c8b047d05e284d22a21cb93c2a1f6fb5
点赞 回复 分享
发布于 2020-05-29 21:26
https://blog.nowcoder.net/n/8dc4f7fc2c2946ac9a3fbe7d75e5ce2c
点赞 回复 分享
发布于 2020-05-28 11:25
https://blog.nowcoder.net/n/7fcefdfa7a3f47009a5674c045e4d241
点赞 回复 分享
发布于 2020-05-27 16:03
https://blog.nowcoder.net/n/4db80492490c4b62883456e37e36f973
点赞 回复 分享
发布于 2020-05-27 12:50
https://blog.nowcoder.net/n/a887de9365964cc0b3175715b4b5b134
点赞 回复 分享
发布于 2020-05-26 19:08
这题目补的好累,痛苦 https://blog.nowcoder.net/n/a1bd0c347d3043eb80c20bcb2fb13c6a 总算写出来了
点赞 回复 分享
发布于 2020-05-26 12:21

相关推荐

2025-12-06 01:10
已编辑
哈尔滨工程大学 Java
一面问的真细,二面不知为啥变双机位。9.29快手主站平时怎么学习 AI 的,国内外知名大模型,实习公司都用的什么大模型,怎么评估效果的java池化思想,线程池构造方法的核心参数,线程池中阻塞队列注意事项,submit方法参数和执行逻辑,shutdown和shutdownnow,核心线程允许过期吗threadlocal底层,为什么key是弱引用,key回收了再get或者set这个value会怎样aqs,如何保证公平性java代理java堆划分,新生代还有别的晋升老年代的情况吗,什么时候触发gc,gc失败抛什么异常,如何排查oom,导出dump命令redis数据结构,哪个底层是跳表,和其他数据结构对比布隆过滤器会出现大key问题吗,你咋实现的布隆过滤器你怎么实现redis分布式锁,可重入,续期聚簇索引非聚簇索引select语句会加锁吗,怎么实现的不加锁undolog redolog binlog怎么能让select加锁,update这个范围加的什么锁,update一条呢手撕简单01背包,接雨水10.10快手主站意图识别用的哪个大模型,走到意图和rag的比例,faq是点击的吗自然语言怎么识别的gap一年干啥了,转正怎么样没跟组里提意向吗,研究生研究方向是传统算法吗,会大模型微调吗注册场景为什么用布隆过滤器,原理分布式锁底层的key怎么拼的,value里是什么redis持久化zset底层mysql索引结构,一个表三个字段有主键唯一索引和没索引的字段会有几个b+树,聚簇索引非聚簇索引存的啥无手撕
点赞 评论 收藏
分享
2025-12-02 19:33
辽宁科技大学 golang
Richard奇:还得是有鹅选鹅
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务