09 2018 档案

摘要:前天,我们了解了一下一种叫做树状数组的神奇玩意儿,今天就放一道真题来检验一下自己的学习成果吧! 嗯,题目就是这样的啦。 分析: 这题的暴力大家应该都会打吧。 注意到m小的压批,所以对于每一个m值,我们可以用前缀和求出[1,i]这个区间内值为m的数的数量,然后在枚举每个区间,判断一下就OK了。这就是暴 阅读全文
posted @ 2018-09-30 08:23 WR_Eternity 阅读(159) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2018-09-28 15:58 WR_Eternity 阅读(103) 评论(0) 推荐(0)
摘要:最近沉迷文化课,好久没有研究新算法了(也就那么十来天吧,嗯。),而且还有一大堆题都还没订正,趁着现在一点时间就学了一下一个叫做树状数组的基(gao)础(shen)数据结构(是不是觉得我特别菜,嗯,我自己都这么觉得)。好了,不和大家扯淡了,开始正题——树状数组! 树状数组这种东西,感觉功能和线段树差不 阅读全文
posted @ 2018-09-28 12:31 WR_Eternity 阅读(127) 评论(0) 推荐(0)
摘要:想必大家都知道一种叫做二叉搜索树这东西吧,那么我们知道,在某些特殊情况下,二叉搜索树会退化成一条链,而且如果出题人成心想卡你的话也很简单,分分钟把你(n log n)的期望卡成。那么我们该如何避免这种尴尬状况的出现呢?我们的范浩强大佬就创造了一种名为Treap的算法。 那么这个算法是如何实现的呢? 阅读全文
posted @ 2018-09-11 11:20 WR_Eternity 阅读(173) 评论(0) 推荐(0)
摘要:今天,我们要探讨的就是——Tarjan算法。 Tarjan算法的主要作用便是求一张无向图中的强连通分量,并且用它缩点,把原本一个杂乱无章的有向图转化为一张DAG(有向无环图),以便解决之后的问题。 首先,我们在原图上跑一遍DFS,然后会发现三种边: 1、正常边:嗯,顾名思义就是连接祖先和儿子节点的边 阅读全文
posted @ 2018-09-04 08:46 WR_Eternity 阅读(128) 评论(0) 推荐(0)