![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
主席树
Pikachu_Yj
这个作者很懒,什么都没留下…
展开
-
hdu 6621 K-th Closest Distance 主席树+二分(模板)
主席树模板 来自xsl #include<bits/stdc++.h> using namespace std; #define Mid (l+r)/2 const int M = 1e6; const int N = 1e5+100; int t, n, q; int rt[N], ls[N*30], rs[N*30], cnt = 0, sum[N*30]; voi...原创 2019-08-04 13:43:32 · 88 阅读 · 0 评论 -
2019 CCPC - 网络选拔赛 1002 主席树
传送门 来自于xls 解法:如果这题不带修改操作,相信大家都会做,我就来讲讲怎么处理修改,对于每次修改操作,我不需要真的去修改它,而是把修改的那个元素插入set中去,然后每次查询,我们不带修改查一个答案v1,然后再去set里找第一个大于等于k的v2,min(v1, v2)就是答案。证明:如果v2 >= v1,不影响答案,如果v2<v1,,假设v2在数组中的位置 > r,那么...原创 2019-08-25 15:07:30 · 237 阅读 · 0 评论 -
2019 徐州网络赛 I query 主席树
传送门 题意:给你一个长度为n的排列,询问m次区间,问区间 [ l, r ] 内有多少对i,j 使得 gcd(pi,pj)= min(pi,pj)。 题解: 对于每个数我可以处理出它倍数所在的位置,假设 gcd(pi,pj)= min(pi,pj), 如果 i < j , 那么在vector[ j] .push_back( i) ,否则vector[ i] .push_ba...原创 2019-09-17 20:38:58 · 156 阅读 · 0 评论