题目链接: https://www.acwing.com/problem/content/101/ 题解: 边界问题最复杂,画图好好模拟一下,二维前缀和还是比较容易的 枚举的所有的边长为R的正方形,AC代码是枚举的正方形的左上端点。 AC代码: #include <cstdio> #include ...
分类:
其他好文 时间:
2020-02-08 13:31:33
阅读次数:
63
https://leetcode.com/problems/longest-well-performing-interval/ 将满足条件的视为+1,不满足的视为-1,计算前缀和。该题可以转换为计算和大于0的最小区间。 class Solution { public: int longestWPI( ...
分类:
其他好文 时间:
2020-02-08 09:49:21
阅读次数:
86
树状数组 $lowbit(x)=x\&( x)$ 二维树状数组 修改某个点,查询(1,1)到(n,m)的前缀和(树状数组要从1开始) HDU2642 Stars $YFF$是个浪漫的人,他喜欢数天上的星星。 为了解决这个问题,我们考虑到天空是一个二维平面,有时星星会很亮,有时星星会很暗。首先,天空中 ...
分类:
编程语言 时间:
2020-02-05 23:49:55
阅读次数:
124
一道很老的斜率优化dp 斜率优化看上去很难,其实是有技巧的 。 对于dp题目,如果你想优化他,一定要先列出朴素的表达式并观察性质 对于本题我们可以发现,如果要更新dp[i],我们就要从前面找到dp[j]+(s[i]-s[j])^2+m的最小值,其中s是前缀和 我们就可以猜测,一定有很多不可能转移的内 ...
分类:
其他好文 时间:
2020-02-05 20:26:32
阅读次数:
74
常用技巧精选(一) 尺取法 POJ 2566 给出一个长度n(<=1e5)的数列,每个数的大小在-1e4-1e4之间,给出若干询问值,要求一段字串和,它的绝对值与询问值最接近 好题目。由于数列有正有负,所以不能直接二分或尺取。考虑对前缀和排序 得到一个新数列,此时新数列任意一段子串都对应原数列的一个 ...
分类:
其他好文 时间:
2020-02-05 20:05:46
阅读次数:
70
数据类型 一、整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序中,整数的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等。计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff00,0xa ...
分类:
编程语言 时间:
2020-02-04 20:46:14
阅读次数:
91
题目 用$n$个点组成二叉树,问高度$\geq h$的有多少个。 分析 首先前缀和相减就能得到答案,做dp 设$dp[n][h]$表示节点数为$n$,高度不超过$h$的树的个数 那么$dp[n][h]=\sum_{i=0}^{n 1}dp[i][h 1] dp[n i 1][h 1]$ 最后输出$d ...
分类:
其他好文 时间:
2020-02-04 15:29:33
阅读次数:
56
区间k小数是主席树的模板题目,如果区间不包含,用莫队+权值线段树也能解 主席树是可持久化线段树,所为可持久化,就是每次只新增不一样的节点,而保留前面的版本,这样可以做到查询。 如果询问时1-r,那么直接主席树,询问的是l-r,就用到前缀和思想,具体看代码注释 #include<iostream> # ...
pass 首先,个人觉得把这个数据结构理解成树状数组套主席树是十分不严谨的。主席树的本质是可持久化权值线段树与前缀和思想的结合。而动态主席树是可持久化权值线段树与树状数组思想的结合。并非树套树般的泾渭分明的叠加。 其次,大概讲下对动态主席树的理解。我们静态主席树中,第i个版本维护的是[1,i]的权值 ...
分类:
其他好文 时间:
2020-02-02 17:35:38
阅读次数:
71
问因数<3的数个数,是否小于给定区间1/3。因数<3除了1以外等价于素数。 据说杜教筛改成求素数前缀和的版本可以暴力做,但是并不会。 我们一个直观感受是,素数是越来越稀疏的,打表发现,50以外长度30以上,一定满足。而长度不到30的,用根号算法暴力判断每个元素即可。 注意要以乘代除,或者起码除dou ...
分类:
其他好文 时间:
2020-02-02 17:22:37
阅读次数:
131