莫队算法链接:传送门 题意: 有n个数,m个区间。问区间内有多少个x,x满足x的个数等于x的值的个数(如果x是3,区间内要存在3个3)。 题解: 因为a[i]太大,所以要离散化一下,但是不能用map容器,因为map容器多一个log 莫队就是离线问题+区间的移动。复杂度是O((N+M)*√N) 莫队代 ...
分类:
编程语言 时间:
2020-05-01 10:50:49
阅读次数:
71
Nowcoder挑战赛39F(模板树上莫队) 题意: 给定一棵树,求两点路径上的不同权值个数和权值是k的倍数的个数 分析: 第二问可以直接离线询问,暴力$n\sqrt{n}$枚举因数更新答案,路径作差 第一问是树上莫队模板题 树上莫队:在 括号序列 上跑莫队,对于单链和双链要分类讨论,更改权值上也有 ...
分类:
其他好文 时间:
2020-04-18 09:45:34
阅读次数:
76
莫队。 统计ai[i]的出现次数,每一次先还原贡献,再加上或减去当前的贡献即可。 ...
分类:
其他好文 时间:
2020-03-29 11:04:11
阅读次数:
68
莫队算法分那么几类: 普通序列 带修改 树上 回滚 支持在线 其实上述的类型还可以组合起来(~~非常的毒瘤~~)。 个人理解莫队算法的精髓在于如何利用暴力将答案再合理的时间和空间内跑出来。说白了: $$莫队算法=一种很牛逼的自定义排序+分块处理+暴力$$ 首先要理解自定义排序,这个排序之后整个序列可 ...
分类:
编程语言 时间:
2020-03-26 19:35:44
阅读次数:
73
1. 枚举根 可以把每个点抽象成从这个点到根路径上的点全部+1,规则改为两个点可以消去。 不同子树显然不属于同一个集合。 我们可以进行操作。 对于一个点来说。 相当于给予一个$a$数组。 求最终剩下的个数和消去的次数。 那么分$sum a_{max} =a_{max}$和$sum a_{max}<a ...
分类:
其他好文 时间:
2020-03-17 19:14:46
阅读次数:
65
这是树上待修莫队的裸题。 可是我已开始应为吧cmp写错了TLE成30,呜呜…… 看代码: #include<bits/stdc++.h> using namespace std; #define int long long const int maxn=1e5+10; int n,m,q,a[max ...
分类:
其他好文 时间:
2020-03-16 15:01:19
阅读次数:
274
题意 $val_{l,r}=\sum\limits_{i=l}^r \sum\limits_{j=i}^r (min_{k=i}^j\{a_k\})$,多次询问$val_{l,r}$ 做法一 莫队 考虑已经求得了$[l,r)$的答案,扩展到$[l,r]$,下面来算增量 设$x$为$[l,r]$最小值 ...
分类:
其他好文 时间:
2020-03-12 22:01:15
阅读次数:
89
题目链接 https://codeforces.com/contest/940/problem/F 题意 给出n个数字,q个询问; 每次询问有两种类型,一种是询问区间,一种是单体修改; 定义Ci为区间里数字 i 出现的次数,求Ci数组的mex ...
分类:
系统相关 时间:
2020-03-11 01:33:28
阅读次数:
94
莫队?又或是树状数组吧。卡莫队,还放莫队题目集,玩心态呀:1.5小时 cf:2小时 软件工程:2小时 英语单词:1小时 复习了C++12章,看了13章一半左右:https://www.cnblogs.com/yrz001030/p/12453076.html 3.5个小时 #include"stdi ...
分类:
其他好文 时间:
2020-03-10 09:13:08
阅读次数:
62
https://codeforces.com/contest/940/problem/F 题意 给出n个数字,q个询问; 每次询问有两种类型,一种是询问区间,一种是单体修改; 询问区间是询问区间内最小的没用到的大于0的整数; 比如我有一串数字是 1 1 2 2 2 3 那么有两个1 三个2,一个3 ...
分类:
系统相关 时间:
2020-03-02 20:21:27
阅读次数:
57