摘要: 首先发掘题目性质,题目要求,每个点,要不往左要不往右跳x 因此我们可能先想到排序,之后初始化答案为a[n]-a[1] 那么接下来考虑使用贪心的想法,首先,在接下来的情况左边界肯定不会往左挑,有边界肯定不会往右跳 而且我们要使左边界尽可能大,右边界尽可能小。所以枚举每个点的跳跃情况时,就找一下左右边界 阅读全文
posted @ 2020-04-11 20:32 朝暮不思 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 这道题目思维量还是挺大的,因为这道题也是维护集合关系,所以我们想到用并查集去维护。 我们应该想到的是,用map映射一下位置,因为原来的数据比较大,不宜维护并查集关系,并且设计两个原点 0 和n+1,表示ab集合,这招是常见手段,因为这两个点是特殊的。之前有到异或并查集也是设计一个另外的原点 又因为x 阅读全文
posted @ 2020-04-11 19:27 朝暮不思 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 对于异或的题目,很多都跟前缀和放在一起,比如说这题,让你求不相交区间异或值相等的个数 很容易想到用前缀和表示区间,现在考虑如何做到不相交并且不重复计算 1.二维循环,第一维从1开始,第二维一个用来统计,一个用来更新 统计的时候,从i开始到n,把这段里面的所有区间的异或值,都看看前面有没有相等的,之后 阅读全文
posted @ 2020-04-11 14:38 朝暮不思 阅读(150) 评论(0) 推荐(0) 编辑