分块和莫队
文章平均质量分 52
Cyhlnj
这个作者很懒,什么都没留下…
展开
-
Bzoj3289: Mato的文件管理
题面传送门Sol求区间逆序对个数,离线莫队搞,开树状数组统计,记得开longlonglonglong 不然WA无数遍不知道为什么# include # define IL inline# define RG register# define Fill(a, b) memset(a, b, sizeof(a))using namespace std;typedef原创 2018-01-22 20:15:20 · 270 阅读 · 0 评论 -
BZOJ4903: [Ctsc2017]吉夫特
传送门可以发现,(nm)≡1(mod 2)\binom{n}{m}\equiv 1(mod~2)(mn)≡1(mod 2) 当且仅当 m and n = mm~and~n~=~mm and n = m即 mmm 二进制下为 nnn 的子集那么可以直接写一个 3183^{18}318 的枚举子...原创 2018-12-27 09:13:50 · 323 阅读 · 0 评论 -
Luogu4887 第十四分块(前体)
sto lxllxllxl orz考虑莫队,每次移动端点,我们都要询问区间内和当前数字异或有 kkk 个 111 的数字个数询问 [l,r][l,r][l,r] 可以再次离线,拆成询问 [1,l−1][1,l-1][1,l−1] 和 [l,r][l,r][l,r]然后考虑莫队要移动 [l,r][l,r][l,r] 的 lll 到 ppp假设 p>lp>lp>...原创 2018-11-02 14:18:06 · 205 阅读 · 0 评论 -
Bzoj4129: Haruna’s Breakfast
题面BzojSol树上带修改莫队求mexmexmex可以对数字也分块 数字大于nnn就设为n+1n+1n+1 查询就找到那个不满的块,在块内找到mexmexmex# include <bits/stdc++.h># define RG register# define IL inline# define Fill(a, b) memset(a, b, ...原创 2018-04-06 22:37:55 · 174 阅读 · 0 评论 -
[WC2013]糖果公园
题面UOJSol树上带修改莫队# include <bits/stdc++.h># define RG register# define IL inline# define Fill(a, b) memset(a, b, sizeof(a))using namespace std;typedef long long ll;template <cl...原创 2018-04-06 22:16:03 · 300 阅读 · 0 评论 -
SPOJ:COT2 Count on a tree II
题意给定一个n个节点的树,每个节点表示一个整数,问u到v的路径上有多少个不同的整数。 n=40000,m=100000Sol树上莫队模板题# include <bits/stdc++.h># define RG register# define IL inline# define Fill(a, b) memset(a, b, sizeof(a))us...原创 2018-04-06 07:56:55 · 264 阅读 · 0 评论 -
树上莫队非详解
做法树分块,像王室联邦一样 然后怎么移动端点蒯VFKVFKVFK的博客:用S(v, u)代表 v到u的路径上的结点的集合。 用root来代表根结点,用lca(v, u)来代表v、u的最近公共祖先。 那么 S(v, u) = S(root, v) xor S(root, u) xor lca(v, u) 其中xor是集合的对称差。 简单来说就是节点出现两次消掉。 lca很讨...原创 2018-04-05 21:56:07 · 208 阅读 · 0 评论 -
带修改莫队注意
左右端点都要在块内比较!!! 再还要比较时间!!! 块的大小n23n23n^\frac{2}{3}原创 2018-02-24 22:42:09 · 157 阅读 · 0 评论 -
Luogu4137:Rmq Problem/mex
题面传送门Sol这题可能是假的 离线莫队搞一搞,把数字再分块搞一搞,就行了# include # define IL inline# define RG register# define Fill(a, b) memset(a, b, sizeof(a))using namespace std;typedef long long ll;const int _原创 2018-01-27 11:21:44 · 269 阅读 · 0 评论 -
Bitset([HZOI 2015]偏序++)
Bitset简介下面介绍C++ STL 中一个非常有用的东西: Bitset类似于二进制状压,它可以把信息转化成一个01串存储起来定义方法: 首先要#include<bitset>或#include<bits/stdc++.h> 然后定义一个长度为len的bitset S bitset<len>S;一些操作...原创 2018-01-07 20:08:02 · 651 阅读 · 0 评论 -
Luogu 4240:毒瘤之神的考验
传送门Sol分开考虑 φ(ij)\varphi(ij)φ(ij) 中 ijijij 的质因子那么φ(ij)=φ(i)φ(j)gcd(i,j)φ(gcd(i,j))\varphi(ij)=\frac{\varphi(i)\varphi(j)gcd(i,j)}{\varphi(gcd(i,j))}φ(ij)=φ(gcd(i,j))φ(i)φ(j)gcd(i,j)直接莫比乌斯反演设 g(x...原创 2018-12-24 12:47:31 · 271 阅读 · 0 评论