随笔分类 -  数据结构-树状数组

摘要:有趣的家庭菜园 题目链接:https://lydsy.com/JudgeOnline/problem.php?id=4240 数据范围:略。 题解: 第一步比较简单,只需要排序之后,每个数不是在左边就是在右边。 我们只需要计算出,当前这个数如果在左边,能跟没放进数列的数构成的逆序对数和在右边哪个更小 阅读全文
posted @ 2019-10-31 20:07 JZYshuraK_彧 阅读(177) 评论(0) 推荐(0)
摘要:Valera and Queries 题目链接:codeforces.com/problemset/problem/369/E 数据范围:略。 题解: 这种题,就单独考虑一次询问即可。 我们发现,包括了至少一个给定点的个数,等于总个数减掉一个给定点都不包括的线段数。 一个都不包括,就表示这个线段的在 阅读全文
posted @ 2019-10-29 20:23 JZYshuraK_彧 阅读(198) 评论(0) 推荐(0)
摘要:公共子序列 题目链接:https://cometoj.com/contest/39/problem/E?problem_id=1585 数据范围:略。 题解: 首先可以考虑知道了$1$的个数和$3$的个数,怎么求? 其实就是从开始找$x$个$1$,从结尾找$z$个$3$,然后两个序列中间$2$的个数 阅读全文
posted @ 2019-10-23 15:57 JZYshuraK_彧 阅读(217) 评论(0) 推荐(0)
摘要:2384: [Ceoi2011]Match 1892: Match 1461: 字符串的匹配 题目大意: 数据范围: 题解: 很巧妙的一道题呀。 需要对$KMP$算法有很深的理解才行。 首先我们需要发现,要求的这个东西跟字符串匹配有点像。 我们在单个模式串匹配的时候用到的$KMP$算法,合法匹配条件 阅读全文
posted @ 2019-07-24 16:29 JZYshuraK_彧 阅读(296) 评论(0) 推荐(1)
摘要:Why Did the Cow Cross the Road III bzoj-4994 Usaco-2017 Feb 题目大意:给定一个长度为$2n$的序列,$1$~$n$个出现过两次,$i$第一次出现的位置记为$a_i$,第二次记为$b_i$,求满足$a_i<a_j<b_i<b_j$的个数。 注 阅读全文
posted @ 2019-01-08 14:12 JZYshuraK_彧 阅读(186) 评论(0) 推荐(0)
摘要:Meteors bzoj-2527 Poi-2011 题目大意:题目链接。 注释:略。 想法: 首先答案可以离线,且具有单调性。 这里的单调性就是随着时间的推移,每个国家收集的陨石数增加。 不难想到整体二分,对时间进行二分。 但是有一个问题,就是一个国家出现了多次,这样的话我们用链表把他们记录到一起 阅读全文
posted @ 2018-12-12 14:16 JZYshuraK_彧 阅读(191) 评论(0) 推荐(0)
摘要:矩阵乘法 bzoj-2738 题目大意:给定一个$n*n$的矩阵。每次给定一个矩阵求矩阵$k$小值。 注释:$1\le n\le 500$,$1\le q\le 6\cdot 10^4$。 想法: 新操作整体二分。 整体二分是一个必须离线的算法而且所求的答案必须满足单调性。 所谓单调性就是比如这个题 阅读全文
posted @ 2018-12-12 11:13 JZYshuraK_彧 阅读(234) 评论(0) 推荐(0)
摘要:Why Did the Cow Cross the Road III bzoj-4994 Usaco-2017 Feb 题目大意:给定长度为$2N$的序列,$1~N$各处现过$2$次,$i$第一次出现位置记为$a_i$,第二次记为$b_i$,求满足$a_i<a_j<b_i<b_j$的对数。 注释:$ 阅读全文
posted @ 2018-12-10 18:33 JZYshuraK_彧 阅读(179) 评论(0) 推荐(0)
摘要:二逼平衡树 bzoj-3196 Tyvj-1730 题目大意:请写出一个维护序列的数据结构支持:查询给定权值排名;查询区间k小值;单点修改;查询区间内定值前驱;查询区间内定值后继。 注释:$1\le n,m\le 5\times 10^4$。 想法: 在这里给予三种题解: 1)首先,最容易想到的应该 阅读全文
posted @ 2018-11-19 21:10 JZYshuraK_彧 阅读(334) 评论(0) 推荐(1)
摘要:Cow Photographs bzoj-2058 Usaco-2010 Nov 题目大意:给定一个n的排列。每次操作可以交换相邻两个数。问将序列变成一个:$i,i+1,i+2,...,n,1,2,...,i-1$形式的序列最少操作次数。 注释:$1\le n\le 10^5$。 想法: 我们做过将 阅读全文
posted @ 2018-09-27 22:46 JZYshuraK_彧 阅读(187) 评论(0) 推荐(0)
摘要:Mato的文件管理 bzoj-3289 题目大意:给定一个n个数的序列。m次询问:一段区间中的逆序对个数。 注释:$1\le n\,mle 5\cdot 10^4$。 想法: 开始想这个题的大佬们,给您点儿提示吧:$O(nlogn\sqrt(n))$可过哦! 所以这个题就是莫队的裸题了。 我们的莫队 阅读全文
posted @ 2018-09-17 14:52 JZYshuraK_彧 阅读(193) 评论(0) 推荐(0)
摘要:采花 bzoj-2743 HEOI-2012 题目大意:给定n朵花,每朵花有一个种类,m次询问:一段区间中至少出现两朵花的种类的个数。 注释:$1\le n,m\le10^6$。 想法:这个题超级像HH的项链 就是把那个题的$nxt$往后再延迟一个更新即可。 最后,附上丑陋的代码... ... 小结 阅读全文
posted @ 2018-08-29 22:05 JZYshuraK_彧 阅读(178) 评论(0) 推荐(0)
摘要:MooFest 狂欢节 bzoj-3378 Usaco-2004 Open 题目大意:给定一个n个数的a序列,每两个数之间有一个距离,两个点之间的权值为$max(a[i],a[j])*dis(i,j)$。 注释:$1\le n\le 2\cdot 10^4$。 想法:裙子说了,这种$max$和$mi 阅读全文
posted @ 2018-08-28 23:28 JZYshuraK_彧 阅读(159) 评论(0) 推荐(0)
摘要:HH的项链 bzoj-1878 SDOI-2009 题目大意:给定一个n个数的序列,m次查询。查询区间数的种类个数。 注释:$1\le n \le 5\cdot 10^4$,$1\le m\le 2\cdot 10^5$。 想法:在线的我不会啊qwq。 我们考虑离线做法,将所有的询问以左端点递增为关 阅读全文
posted @ 2018-08-28 23:13 JZYshuraK_彧 阅读(192) 评论(0) 推荐(0)
摘要:大都市meg bzoj-1103 POI-2007 题目大意:给定一颗n个点的树,m次操作。将一条路的边权更改成0;查询一个点到根节点的点权和。开始的时候所有边的边权都是1。 注释:$1\le n,m\le 2.5\cdot 10^5$。 想法:我们先拉出dfs序。其实严格来讲是出栈入栈序,就是每个 阅读全文
posted @ 2018-08-28 23:01 JZYshuraK_彧 阅读(186) 评论(0) 推荐(0)
摘要:Tree 园丁的烦恼 bzoj-1935 Shoi-2007 题目大意:给定平面上的$n$个点,$m$次查询矩形点个数。 注释:$1\le n,m\le 5\cdot 10^5$。 想法:静态二维数点。 $Orz Winniechen$,真tm敢写$KD-Tree$,虽然$T$了.. 正常这种静态的 阅读全文
posted @ 2018-08-28 22:39 JZYshuraK_彧 阅读(166) 评论(0) 推荐(0)
摘要:动态逆序对 bzoj-3295 Cqoi-2011 题目大意:题目链接。 注释:略。 想法:直接建立主席树。 由于是一个一个删除,所以我们先拿建立好的root[n]的权值线段树先把总逆序对求出来,接着没删一个数,我们就删掉这个点作为右端点的逆序对和作为左端点的逆序对。 这个过程我们直接模拟树状数组。 阅读全文
posted @ 2018-07-31 22:52 JZYshuraK_彧 阅读(181) 评论(0) 推荐(1)
摘要:Dynamic Rankings bzoj-1901 Zju-2112 题目大意:给定一个n个数的序列,m个操作,支持:单点修改;查询区间k小值。 注释:$1\le n,m\le 10^4$。 想法:如果这个教树套树的话,我也没办法。 其实就是借用了树状数组的思想,我们在这里叫它...阉割树状数组把 阅读全文
posted @ 2018-07-30 23:03 JZYshuraK_彧 阅读(222) 评论(0) 推荐(0)
摘要:数表 bzoj-3529 Sdoi-2014 题目大意:n*m的数表,第i行第j列的数是同时整除i和j的所有自然数之和。给定a,求数表中所有不超过a的和。 注释:$1\le n,m \le 10^5$。 想法:我们先不考虑那个a的限制:我们设f(i)表示整除i的自然数之和。 $\sum\limits 阅读全文
posted @ 2018-07-27 22:35 JZYshuraK_彧 阅读(252) 评论(0) 推荐(0)
摘要:免费的馅饼 bzoj-2131 题目大意: 注释:$1\le n \le 10^5$,$1\le w \le 10^8$。 想法:首先,想到dp 状态:dp[i][j]表示i分钟在位置j的最大收益 优化优化 状态:dp[i]表示最后收到i的最大收益。 转移:顺序枚举i:1->n即可。 然后,我们尝试 阅读全文
posted @ 2018-07-24 22:39 JZYshuraK_彧 阅读(196) 评论(0) 推荐(0)