![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
其他----莫队
Top_xiao
这个作者很懒,什么都没留下…
展开
-
CodeChef - LNDNCK 回滚莫队
链接题意:给你两个数组, B, P, 数组个数n 小于等于 2e5.m 个询问, 每次询问 l r, 把 区间 [l, r] 按照 b 的升序排序, 然后求和 abs(p[i] - p[i-2]).思路:一开始的思路就是直接暴力莫队,每次把 b 插入到map 里面去, 删除也是直接从 map 里面删除。每次修改只会影响周围的几个值。但是每次map 的查询是 log 的, 会超时。所以要想一个方法, 每次查询时 O(1) 的。这个时候用回滚莫队。用一个链表把 b 从小到大串起来。 只有原创 2020-07-24 16:55:01 · 159 阅读 · 0 评论 -
bzoj 2038: [2009国家集训队]小Z的袜子(hose) (经典莫队题)
进行区间询问[l,r],输出该区间内随机抽两次抽到相同颜色袜子的概率。一个区间可以选取的总数是 C(r-l+1,2), 这个是分母, 分子是 C(区间颜色,2)ans 代表分子,是区间求和,每种颜色可以选择的可能。 莫队算法的复杂度是 n*sqrt(n); #include <bits/stdc++.h>#define mem(x,v) memset(x...原创 2018-08-13 13:05:54 · 127 阅读 · 0 评论 -
bzoj 2120: 数颜色 (带修改莫队)
求区间颜色,还加上少量的修改。具体看代码注释。#include <bits/stdc++.h>#define mem(x,v) memset(x,v,sizeof(x)) #define go(i,a,b) for (int i = a; i <= b; i++)#define og(i,a,b) for (int i = a; i >= b; i-...原创 2018-08-13 16:32:13 · 196 阅读 · 0 评论 -
bzoj 4129: Haruna’s Breakfast (树上莫队 + 修改)
https://www.lydsy.com/JudgeOnline/problem.php?id=4129DescriptionHaruna每天都会给提督做早餐! 这天她发现早饭的食材被调皮的 Shimakaze放到了一棵树上,每个结点都有一样食材,Shimakaze要考验一下她。每个食材都有一个美味度,Shimakaze会进行两种操作:1、修改某个结点的食材的美味度。2...原创 2019-08-03 17:11:43 · 123 阅读 · 0 评论