
树状数组
文章平均质量分 68
空灰冰魂
=NULL
展开
-
【BZOJ2434】【NOI2011】阿狸的打字机 AC自动机
这是一道神题。首先我们需要建立AC自动机,然后再建个Fail树,之后发现 如果询问a串在b串中出现了几次,那么只需要看b串在AC自动机上所有的节点中有多少个节点,在a串的结束节点在Fail树上的子树中就可以了。然后这样做就很可以了,但是仍然不能AC,这时我们只需要按照Fail树的dfs序建立数据结构(我写了树状数组)进行区间查询就好了。这时对于以上的b串,原创 2015-01-19 16:48:58 · 2100 阅读 · 0 评论 -
【BZOJ3211】花神游历各国 树状数组 并查集 均摊分析
题解:一个点开几次方就没啦。所以我们只需要修改不是0或者1的点就行了。 均摊基本O(n)O(n)。 然后用并查集维护一个点右边第一个不是0的数。手写读入果然高大上。卡rank神器。 顺便Orz一下wys大神。代码:#include #include #include #include #include #define N 100100using namespace原创 2015-03-27 23:53:36 · 1304 阅读 · 0 评论 -
【BZOJ1452】【JSOI2009】Count 二维树状数组
题解:暴力维护100个二维树状数组。妈呀因为没测样例就交还RE一次(虽然显示是WA)代码:#include #include #include #include #define N 305#define P 105using namespace std;int a[P][N][N],n,m,p;inline int lowbit(int x){return x&原创 2015-03-23 09:07:48 · 1591 阅读 · 0 评论 -
【BZOJ2780】【Spoj8093】 Sevenk Love Oimaster 后缀自动机
题意:n,mn个串m个串样例里面倒数第二行的you应该扔到下一行。问m个串每个在前n个串中的几个出现过。题解:首先这道题跟【BZOJ2754】【SCOI2012】喵星球上的点名是一样的,只不过更卡时一点,或者说喵的数据太弱。这道题虽然是后缀自动机,但是大体思路和【BZOJ2434】【NOI2011】阿狸的打字机 AC自动机原创 2015-01-22 10:22:22 · 2809 阅读 · 0 评论