码迷,mamicode.com
首页 >  
搜索关键字:前缀和    ( 2330个结果
bzoj4765: 普通计算姬 (分块 && BIT)
最近一直在刷分块啊 似乎感觉分块和BIT是超级棒的搭档啊 这道题首先用dfs预处理一下 得到每一个sum值 此时查询是O(1)的 (前缀和乱搞什么的 但是修改需要O(n) (需要修改该节点所有祖先的sum 复杂度就爆了呀 此时考虑分块优化 似乎弹飞绵羊也是这样思考得出分块做法的 首先分成 √n 块 ...
分类:其他好文   时间:2018-03-15 11:09:33    阅读次数:194
BZOJ4236 JOIOJI(map)
前缀和,判定条件转化一下,就可以用map了,注意初始化 ...
分类:其他好文   时间:2018-03-14 23:41:10    阅读次数:185
洛谷 P1865 A % B Problem[筛素数/前缀和思想/区间质数个数]
题目描述 区间质数个数 输入输出格式 输入格式: 一行两个整数 询问次数n,范围m 接下来n行,每行两个整数 l,r 表示区间 输出格式: 对于每次询问输出个数 t,如l或r?[1,m]输出 Crossing the line 输入输出样例 输入样例#1: 复制 2 5 1 3 2 6 输出样例#1 ...
分类:其他好文   时间:2018-03-14 20:44:44    阅读次数:310
【BZOJ 1129】[POI2008]Per 二叉堆
这个东西读完题之后,就能知道我们要逐位计算贡献.推一下式子,会发现,这一位的贡献,是当前剩余的数字形成的序列的总数,乘上所剩数字中小于s上这一位的数的个数与所剩数字的总数的比.所以我们维护“当前剩余的数字形成的序列的总数”以及权值数组的前缀和就好了.后者可以用树状数组维护,前者可以用一个变量维护.但 ...
分类:其他好文   时间:2018-03-14 17:01:46    阅读次数:224
Hihocoder 1496 寻找最大值(状态压缩 + 高位前缀和)
题目链接 Hiho 1496 设$f[i]$为二进制集合包含$i$的最大的两个数,这个东西用高维前缀和维护。 高位前缀和转移的具体方案 :枚举每一位,然后枚举每个集合,大的转移到小的。 注意合并的时候最好别用$std::sort$(我一开始被卡常数了) ...
分类:其他好文   时间:2018-03-13 23:49:23    阅读次数:218
[hihocoder][Offer收割]编程练习赛50
循环数组 计算a[i]的前缀和s[i],计算l[i]为1~i-1中最小的s值,r[i]为i~n中最大的s值。 则a[i]~a[n]满足性质的条件为r[i]-s[i-1]>0,a[1]~a[i-1]满足性质的条件为l[i]+s[n]-s[i-1]>0 #pragma comment(linker, " ...
分类:其他好文   时间:2018-03-13 19:09:22    阅读次数:182
BZOJ1926 [Sdoi2010]粟粟的书架 【主席树 + 二分 + 前缀和】
题目 幸福幼儿园 B29 班的粟粟是一个聪明机灵、乖巧可爱的小朋友,她的爱好是画画和读书,尤其喜欢 Thomas H. Co rmen 的文章。粟粟家中有一个 R行C 列的巨型书架,书架的每一个位置都摆有一本书,上数第i 行、左数第j 列 摆放的书有Pi,j页厚。粟粟每天除了读书之外,还有一件必不可 ...
分类:其他好文   时间:2018-03-13 15:40:10    阅读次数:155
Codeforces Round #470 (rated, Div. 2, based on VK Cup 2018 Round 1)C. Producing Snow+差分标记
题目链接:C. Producing Snow 题意:给两个数组v[N],T[N],v[i]表示第i天造的雪,T[i],表示第i天的温度,一堆雪如果<=T[i],当天就会融完,否则融化T[i],要求输出每天的融雪总量。 题解:我对T数组求个前缀和,就可以二分找到每堆雪在那一天(pos)融化,余下的要加 ...
分类:其他好文   时间:2018-03-13 00:59:45    阅读次数:263
BZOJ1010_玩具装箱toy_KEY
题目传送门 这道题可以很快想到暴力DP的做法: 但是数据范围有50000,这就需要用斜率优化了。 我们设S[i]=C[i]+i(C[i]为前缀和),L++,设j为i的最优决策点。。 原方程就变为: 我们设2*S[i]为k。 相当于这题就变成了求最小的截距f[i]。 假设A,B,C,D为四个决策点。 ...
分类:其他好文   时间:2018-03-10 22:01:34    阅读次数:251
APIO 2010 特别行动队 | 斜率优化DP
luogu 3628 si表示序列的前缀和f(i)表示将序列的前i个划分若干段的最大价值f(i)= max{f(j)+a?(si?sj)2+b?(si?sj)+c},1≤j<i = max{?2a*sj*si+f(j)+a*sj*sj?b*sj}+a*si*si+b*si+c,1≤j<i ...
分类:Windows程序   时间:2018-03-10 20:30:27    阅读次数:265
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!