上一页 1 ··· 15 16 17 18 19
摘要: 线段树区间染色 题目要求最大的连续段的左端点,我们在查询的时候返回最左端即可,注意查找顺序,应该从左到右!! 另外这类染色的push_down其实比较简单,直接染成上一层的标记即可 push_up和连续子段和有点像,需要维护前缀和后缀 阅读全文
posted @ 2019-03-14 21:07 清楚少女ひなこ 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 双向dfs 数据不是很大,但是如果直接暴搜的话2^45肯定过不了的。。 所以想到乱搞!!要让程序跑的更快,肯定要减下搜索树的规模,再加上这道题双搜的暗示比较明显(逃),所以就来乱搞+双搜求解 所以先从1~n/2(我的电脑测出来是n/2+2最快)开始枚举所有可能的重量,放进数组。。 这里注意,一定要先 阅读全文
posted @ 2019-03-13 20:20 清楚少女ひなこ 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 迭代加深dfs 每次控制序列的长度,依次加深搜索 有几个剪枝: 优化搜索顺序,从大往下枚举i, j这样能够让序列中的数尽快逼近n 对于不同i,j和可能是相等的,在枚举的时候用过的数肯定不会再被填上所以可以去重(记得回溯) include include include define INF 0x3f 阅读全文
posted @ 2019-03-13 16:19 清楚少女ひなこ 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 写了1506顺便写下1505。。 还是求矩形面积,不过要预处理一下以每一个F为底的高度,然后想左右扩展到最大长度即为矩形的长。。 计算方法有点绕,令l\[i]表示i的左边界,那么初始化l\[i] = i. 假设我们在第n行 每次向左跳 判断 h[j]是否小于或等于h\[l\[j] 1],换句话说就是 阅读全文
posted @ 2019-03-12 21:43 清楚少女ひなこ 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 单调栈裸题 如果矩形高度从左到右是依次递增,那我们枚举每个矩形高度,宽度拉到最优,计算最大面积即可 当有某个矩形比前一个矩形要矮的时候,这块面积的高度就不能大于他本身,所以之前的所有高于他的矩形多出来的部分都没用了,不会再计算第二次。 因此我们只需要用单调栈维护矩形高度即可,当有高度较低的矩形进栈时 阅读全文
posted @ 2019-03-12 20:18 清楚少女ひなこ 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 反向建图+dijkstra 切一道老题水水。。。 题目的意思是让我们找到两个点x,y,使得差值最大。 所以我们先在正向图跑dijkstra,用d数组表示从起点到i点的最少价值,所以可以用d\[i]=min(w\[i], d\[j])更新d值 再用f数组表示从该点到终点的最大价值,这次我们在反向图从n 阅读全文
posted @ 2019-03-12 19:13 清楚少女ひなこ 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 拓扑排序+状态压缩 考虑每一个点能够到达的所有点都是与该店相邻的点的后继节点,可知: 令f\ "u]表示u点可到达的节点个数,f\[u]={u}与f\[v" 的并集 于是可以利用状态压缩,能够到达的节点用1表示,这样更新f的时候直接求并集即可 include define INF 0x3f3f3f3 阅读全文
posted @ 2019-03-12 16:26 清楚少女ひなこ 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 单调栈的妙处!! 刚看到这题差点写个splay。。但是后来看到询问范围的只是后L个数,因为当有一个数新进来且大于之前的数时,那之前的数全都没有用了,满足这种性质的序列可用单调栈维护 栈维护下标(因为要时刻确定查询位置),最后在询问的时候,用二分找到大于等于len l + 1的第一个位置即为最大值 i 阅读全文
posted @ 2019-03-11 21:17 清楚少女ひなこ 阅读(91) 评论(0) 推荐(0) 编辑
摘要: Trie求最大XOR 设w\[x]表示从跟节点到x的路径上所有权值的xor,显然有: w\[x] = w\[fa] xor weight\(x, fa) 所以我们可以先dfs一次树,把所有点的w都预处理出来。。 根据xor的性质可知,x xor x = 0,所以问题就变成了求w\[x] xor w\ 阅读全文
posted @ 2019-03-11 20:27 清楚少女ひなこ 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 区间最大子段和模板题。。 维护四个数组:prefix, suffix, sum, tree 假设当前访问节点为cur prefix\[cur]=max(prefix\[lson],sum\[lson]+preifx\[rson]) suffix\[cur]=max(suffix\[rson],sum 阅读全文
posted @ 2019-03-10 21:39 清楚少女ひなこ 阅读(184) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19