
数据结构 前缀和
文章平均质量分 64
yuhong_liu
这个作者很懒,什么都没留下…
展开
-
前缀和的用法 Problem(M33):IQ Test
似乎在百度搜不到这个。。。或者名字不叫这个吧 //题目给n,m 分别是数组A元素数量,m是操作次数操作是,每次 得到一个区间(x,y) 对 从x到y的每一个A[i]做一次 Ai=Ai-L+1; n,m最大是10^5; 直接模拟的话就是超时的#include #include #include #include #include #include原创 2015-04-15 14:32:55 · 534 阅读 · 0 评论 -
Codeforces Gym 100637A A. Nano alarm-clocks 前缀和的利用
题意给你n个时钟,问你总计转多少时间,可以使得所有表的时间一样注意,只能往前拨题解:先排序,求前缀和,对每个表 假设他是答案(最优表),然后对于每一个在他前面的表,可能时间只能转到和他的时间一样的时候在他后面的表,就转到超过12h再到达最优表就好了for一遍暴力过#include #include #include原创 2015-07-30 04:31:51 · 970 阅读 · 0 评论 -
cf#320 Div.2 Problem D "Or" Game
本题就是给你一堆数, 然后给你一个x^k 要把这个x^k乘到哪个数,能使得这一堆数的 or运算之和最大显然要让和最大 ,得让 被乘得到的数 最高位最大,所以全部数乘到一个数上但是并不是选最大的一个数,例如 2 2 2 4 5选四 是16|5 =21选五 是 20|4 =20其实我们可以证明 如果一堆数是 1 2 3 5 6 7 11 12 14原创 2015-09-18 08:32:36 · 554 阅读 · 0 评论 -
cf#336-B-Hamming Distance Sum
http://codeforces.com/contest/608/problem/B给a,b串,求a和 【b的所有长度为len(a)的连续子串的】的 Hamming Distance之和用整体法来看,b的每一个位置b[i]会被多少个a[i]访问到,记为mm, 那么 这些能访问到b[i]的mm个数里面有多少个是1,记为one,如果b[i]==1,那么sum+原创 2016-01-07 20:18:22 · 1121 阅读 · 0 评论 -
poj2750-Potted Flower-动态求最大连续环区间和(线段树上分治+set维护)
http://poj.org/problem?id=2750题意,给你n个数,首尾相接,让你求最大连续环区间和首先知道这个最大连续和只有两种情况,1是不跨越首尾的,这种直接求2是跨越首尾的,显然最大连续和是跨越首尾的,那么最小连续区间和必然在1-n之间,所以我们只需要求最小连续和,然后sum-它就得到最大连续和如果只求一次,可以dp就好了,但是由于每次动态更新单点,所以原创 2016-03-03 21:14:24 · 520 阅读 · 0 评论 -
8VC Venture Cup 2016 -D - Jerry's Protest- 预处理/前缀和/概率计算
http://codeforces.com/contest/626/problem/D//题意:/*给出n,给出n个求上的数字,不会有重复的2个人从箱子抽取球,比球上数字大小的游戏:求一个概率: A人赢了前两次,B人赢第三次,但是A总数字和小于B预处理出int cun[2000*2005]; //记录 一局游戏,赢了i分 这种情况出现的次数__int64 c原创 2016-02-16 16:29:58 · 441 阅读 · 0 评论 -
CF#243 C. Magic Formulas- xor异或运算 / 数学
http://codeforces.com/contest/424/problem/C题意:给n个数,p1p2p3...pn求qi=pi^(i%1)^(i%2)^.....^(i%n)Q=q1^q2^......^qn由于异或的原因,支持交换 操作数。因此我们把qi分离出qi和 剩下部分,全部pi直接异或在一起 对于所有qi的剩余部分 ,显然 (i%1)^(i%原创 2016-03-24 01:20:04 · 877 阅读 · 0 评论 -
求第k大连续区间和/第k大子序列和 - 二分+树状数组+前缀和(或主席树+堆)
给你n,再给你n个数,最后给一个k求出这个序列的第k大连续区间和;N(1ai(1K(1思路:预处理前缀和。并将其离散化(去重)。二分答案,然后每次判断中,遍历前缀和Bi,然后查找有多少个jX,也就是有多少个子序列的和是大于X的,即使求有多少个Bj小于【Bi-X】,这部分查询我们可以用树状数组实现,方法类似于树状数组求逆序对。 查询方法简要说一下,原创 2016-03-19 17:32:10 · 3869 阅读 · 0 评论 -
Codeforces Round #353 (Div. 2) C. Money Transfers 贪心+前缀和
http://codeforces.com/contest/675/problem/C题意:n个银行形成环,一个人在每个银行资产有正有负,现在要求相邻银行之间可以转移资产,使得最后每个银行资产为零。保证sum=0,求最小转移次数首先最坏的情况,从第一个银行一直转移到最后一个银行,这样的话 最小转移次数=n-1如果我们找到一个区间的区间和为零,那么就把原序列划分成原创 2016-05-24 17:04:31 · 602 阅读 · 0 评论