码迷,mamicode.com
首页 >  
搜索关键字:前缀和    ( 2330个结果
【uva 1471】Defense Lines(算法效率--使用数据结构)
题意:给一个长度为N(N≤200000)的序列,要删除一个连续子序列,使得剩下的序列中有一个长度最大的连续递增子序列,输出其长度。 解法:(参考自紫书)1.暴力枚举删除的区间 [l,r],O(n^2),再数需要O(n)。总共O(n^3)。 2.前者+O(n)预处理 f[i] 和 g[i] 表示前缀和 ...
分类:编程语言   时间:2016-11-04 21:07:53    阅读次数:241
【bzoj 1202】[HNOI2005] 狡猾的商人(图论--带权并查集+前缀和)
题意:一个账本记录了N个月以来的收入情况,现在有一个侦探员不同时间偷看到M段时间内的总收入,问这个账本是否为假账。 解法:带权并查集+前缀和。 判断账本真假是通过之前可算到的答案与当前读入的值是否相同来完成。那么就是只有知道新读入的区间2端的(在相同区域内的!!)前缀和才可以判断,也就是这2个端点之 ...
分类:其他好文   时间:2016-11-04 09:40:30    阅读次数:253
100726C
显而易见,我们要找子串,每次记录前缀和,算出余数,然后通过一个数组保存余数,答案就是加上之前余数的总和,要注意整除的情况 ...
分类:其他好文   时间:2016-11-02 00:41:03    阅读次数:206
[NOIP2012]借教室 题解
题目大意: 有一个n个数的数列,m个操作,第i个操作使[li,ri]区间建di,问第几个操作使数列中出现负数。 思路: 暴力显然过不了,那么就可以优化了,不难想到线段树,显然需要良好的姿势,那么就差分。 a[i]表示第i天比第i-1天多了多少房间,于是a的前缀和即为该天的房间数量。而a的维护显然为a ...
分类:其他好文   时间:2016-10-31 13:46:27    阅读次数:186
bzoj2431:[HAOI2009]逆序对数列
思路:设f[i][j]表示前i个数逆序对为j的方案数,第i+1个数可以新形成1~i个逆序对,于是f[i][j]=Σf[i-1][j-k],然后用一个前缀和优化成n^2即可。 ...
分类:其他好文   时间:2016-10-29 19:41:57    阅读次数:248
[NOIP2011]聪明的质监员 题解
题目大意: 额……貌似蛮清晰的,就不赘述了。 思路: 首先不难发现M越大Y越小,因此可以二分答案(方向不要弄错),二分出最小的不小于S的Y即可。而计算Y时可用前缀和O(n+m)求得。两种边界情况也要考虑一下(同时long long不要少开)。 代码: ...
分类:其他好文   时间:2016-10-29 09:29:47    阅读次数:127
Codeforces Gym 101138 D. Strange Queries
Description 给你一下长度为 \(n\) 的序列. \(a_i=a_j\) \(l_1 \leqslant i \leqslant r_1\) \(l_2 \leqslant i \leqslant r_2\) 询问满足条件的 \((i,j)\) 对数. Sol 分块+前缀和. 非常乱搞啊 ...
分类:其他好文   时间:2016-10-27 23:14:43    阅读次数:301
【noi 2.6_9277】Logs Stacking堆木头(DP)
题意:给出在最底层的木头的个数,问有多少种堆放木头的方式。要求木头必须互相挨着在一起。 解法:f[i]表示最底层i个木头的堆放木头的方式。注意递推的思想!只需知道上一层堆放0~i-1个(即最底层堆放i个木头)的方式数就可以利用加法原理得到f[i]。 方法一、用前缀和求解。由于要求木头挨在一起,上层为 ...
分类:其他好文   时间:2016-10-24 22:58:29    阅读次数:257
BZOJ 2431 逆序对数列
dp+前缀和。 ...
分类:其他好文   时间:2016-10-24 14:17:29    阅读次数:215
特教的理性愉悦
一个不知名的神犇发的一套NOIp模拟题的T3。 其他的很好搞定,问题是如何求一段路径上任意两点之间的路径和。 首先很容易想到的是把最暴力枚举两点的距离变成枚举边然后利用乘法原理计算每条边对答案的贡献,一次计算复杂度为$O(N)$。显然要在这之上进行优化。 如何把每次的枚举变成前缀和的计算?这是要思考 ...
分类:其他好文   时间:2016-10-24 14:11:15    阅读次数:428
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!