摘要: 链接:Miku 对于这个题,我们对于每一个数i,分别求出所有比它小的,在它前面的和 比它大的,在它后面的,然后把这两个乘起来,然后再把这些积加起来就可以了 然而这样直接做复杂度太高了,我们要优化,仿照树状数组求逆序对的方法,我们就可以在可以接受的时间内求出并且解决问题了 #include<iostr 阅读全文
posted @ 2020-02-15 19:05 Simex 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 链接:Miku 这道题虽说是要偶数个数的数的异或和,但是这就是等于区间奇数个数的数的异或和异或上数的种类的异或和 然后奇数这部分可以用前缀异或和来解决,至于种类的问题,就和HH的项链方法一样了 #include<iostream> #include<cstdio> #include<algorith 阅读全文
posted @ 2020-02-15 18:57 Simex 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 链接:Miku %%%ljx巨佬会莫队 这道题可以用树状数组过 首先,把所有询问按照右端点从小到大排序,这个很容易想到,然后非常容易想到,建立一个数组f, 如果数字a在i出现了,就再f[i]=1,然后统计一下区间和就可以了,当然,用树状数组优化 然而考虑一下这样的问题:区间不包含这个数了,这个数重复 阅读全文
posted @ 2020-02-15 18:34 Simex 阅读(106) 评论(0) 推荐(0) 编辑