首页
比赛
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
最大异或和
6条解析
开通博客写题解
DeNeRATe
发表于 2020-11-01 21:55:42
分析 首先,我们将题目化简一下由于设Pre[]表示异或前缀和 所以我们其实只需要维护Pre[]即可每次在一定的区间内查询与当前Pre[N]异或的最大值即可由于是区间查询,并且需要动态维护所以我们可以使用类似于主席树的维护方式进行维护即可持久化01Trie树动态进行开点由于每次只会修改到个节点查询的时
展开全文
林思艺
发表于 2020-10-25 10:19:51
题意 给你一个序列,让你进行次操作。操作有如下两种:1.在序列末尾添加一个数。2.求以到内的任意位置为起始,以为结尾,是的这个子序列异或和最大。 分析 可以看出这是一个可持久化Tire树,首先利用前缀和转化问题,将查询操作转化为求。如果查询没有区间限制,那么就是一个Tire树就可以。但有了区间限制就
展开全文
rk_no
发表于 2020-10-23 10:17:29
题目: 给定一个非负整数序列,初始长度为。有个操作,有以下两种操作类型: :添加操作,表示在序列末尾添加一个数,序列的长度。:询问操作,你需要找到一个位置,满足,使得: 最大,输出最大是多少。 做法: 我们直接看查询操作,它是要求序列的某个后缀的和,的最大值。我们设表示序列前个数的和。则其实是要求
展开全文
熠丶
发表于 2020-10-27 14:00:04
做法:可持久化01tire 思路: 令s[i] = a[1] ^ a[2] ^ … a[i-1] ^ a[i]则a[p] xor a[p+1] xor … xor a[N] xor x 相当于 s[N] ^ x ^ s[p-1]s[N] ^ x 每次可以看成一个固定值 v提前算出来, 则相当于 求
展开全文
louhc
发表于 2019-08-28 13:16:13
思路 可持久化入门题.首先,如果不是区间,而是整体询问的话,我们可以直接建,从高位到低位枚举,答案的这一位能是1就为1,不然只能为0.区间询问的话其实相差不大.使用可持久化树,这样就知道每个前缀序列构成的树.还需要记录每个节点总共经过了几次.然后在两棵树上跑,这里判断是否有节点作差即可(类似于前缀和
展开全文
998244353
发表于 2020-10-30 15:10:23
题意:给定一个非负整数序列,初始长度为。有个操作,有以下两种操作类型: :添加操作,表示在序列末尾添加一个数,序列的长度。 :询问操作,你需要找到一个位置,满足,使得: 最大,输出最大是多少。数据范围: 题解:可持久化模板题。记前缀异或和为:由于异或的性质,类似主席树的建树,对每个前缀建立一棵树。
展开全文
查看本题
查看本题讨论
相关比赛
1038-0x48 数据结构进阶-可持久化数据结构
进入比赛
20047-IT技能大赛
进入比赛
27023-寒假冲刺
进入比赛
28737-牛客竞赛字符串专题班Trie(字典树多模式匹配)
进入比赛
47876-星辰阁
进入比赛
等你来战
查看全部
新疆大学2025年7月月赛(同步赛)
报名截止时间:2025-07-06 18:00
牛客周赛 Round 99
报名截止时间:2025-07-06 21:00
牛客练习赛142
报名截止时间:2025-07-11 21:30
2025年第一届上海师范大学程序设计竞赛(同步赛)
报名截止时间:2025-07-13 18:00
牛客周赛 Round 100
报名截止时间:2025-07-13 21:00
2025牛客暑期多校训练营1
报名截止时间:2025-07-15 17:00
2025牛客暑期多校训练营2
报名截止时间:2025-07-17 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题