【UVA1401】Remember the Word Trie+dp】的更多相关文章

题目大意:给定一个字符串和一个字符串集合,问从集合中选出若干个串组成给定母串的不同方案数. 题解:有些类似于背包问题.状态很好表示,为:\(dp[i]\) 表示母串前 i 个字符的不同方案数,因此,有状态转移方程为:\(dp[i]=\Sigma dp[j],s[j+1...i]=s_0,s_0\in set\) ,可以发现若枚举 \(j < i\) 作为决策集合的话,时间复杂度将是 \(O(n^2)\) 的.优化:可以用 Trie 来直接进行匹配,具体操作如下:将每个集合中的串倒序插入 Trie…
[题解]HDU5845 Best Division (trie树) 题意:给定你一个序列(三个参数来根),然后请你划分子段.在每段子段长度小于等于\(L\)且子段的异或和\(\le x\)的情况下最大化分出子段的个数 区间/子段/序列这种东西一大性质就是右端点之后与前面无关. \(dp(i)\)表示上一个右端点是\(i\)且前面分出来的子段都满足条件的最多子段个数. 直接转移\(O(n^2)\)考虑优化这个东西,子段转前缀和是应该记起来的套路,现在问题就是变成查询两个前缀和的异或值是否满足条件.…
[BZOJ4260]Codechef REBXOR (Trie树) 题面 BZOJ 题解 两眼题.第一眼不会做,第二眼好简单... 前缀异或和一下,拿\(Trie\)树维护求一个在这个端点以左的最大值,右侧同理,取个最大值即可. #include<iostream> #include<cstdio> #include<cstring> using namespace std; #define MAX 400400 inline int read() { int x=0;…
[题解]ARC101F Robots and Exits(DP转格路+树状数组优化DP) 先删去所有只能进入一个洞的机器人,这对答案没有贡献 考虑一个机器人只能进入两个洞,且真正的限制条件是操作的前缀\(\min \max\),我们直接按照前缀\(\min \max\)\(DP\) 把前缀\(\min \max\)设成坐标,转成格路问题,现在就变成了平面上有若干点要用一条折线分开这些点使得\(n\)对配对点在平面的两侧. 由于我们要保证方案不重,所以要钦定经过某个配对关系的下面那个点,转移方程是…
[BZOJ1212][HNOI2004]L语言 Description 标点符号的出现晚于文字的出现,所以以前的语言都是没有标点的.现在你要处理的就是一段没有标点的文章. 一段文章T是由若干小写字母构成.一个单词W也是由若干小写字母构成.一个字典D是若干个单词的集合. 我们称一段文章T在某个字典D下是可以被理解的,是指如果文章T可以被分成若干部分,且每一个部分都是字典D中的单词. 例如字典D中包括单词{'is', 'name', 'what', 'your'},则文章'whatisyournam…
[BZOJ2073][POI2004]PRZ Description 一只队伍在爬山时碰到了雪崩,他们在逃跑时遇到了一座桥,他们要尽快的过桥. 桥已经很旧了, 所以它不能承受太重的东西. 任何时候队伍在桥上的人都不能超过一定的限制. 所以这只队伍过桥时只能分批过,当一组全部过去时,下一组才能接着过. 队伍里每个人过桥都需要特定的时间,当一批队员过桥时时间应该算走得最慢的那一个,每个人也有特定的重量,我们想知道如何分批过桥能使总时间最少. Input 第一行两个数: w – 桥能承受的最大重量(1…
[KMP] 学习KMP,我们先要知道KMP是干什么的. KMP?KMPLAYER?看**? 正如AC自动机,KMP为什么要叫KMP是因为它是由三个人共同研究得到的- .- 啊跑题了. KMP就是给出一个母串S和串T,然后看T是不是S的子串. 易想到朴素算法,且时间复杂度是明显的O(NM). 那么为什么KMP的复杂度会这么高呢? 因为每次失配的时候,指针只是简单的把在S串的指针向后移动一位,T串回到开头,其中对于子串T已匹配过的信息没有充分利用. KMP是干嘛的? 利用一个next数组使得失配时T…
[CF506E]Mr. Kitayuta's Gift 题意:给你一个字符串s,你需要在s中插入n个字符(小写字母),每个字符可以被插在任意位置.问可以得到多少种本质不同的字符串,使得这个串是回文的.答案对10007取模. $|s|\le 200,n\le 10^9$ 题解:神题. 首先由于题目要求本质不同,所以我们为了防止重复,考虑从两边向中间不断复原回文串,如果新加入的字符与s两端(或一端)的字符相同,则匹配成功,继续匹配下一个字符.也就是说我们取的是s在回文串中最外面的出现位置. 为了方便…
[BZOJ1187][HNOI2007]神奇游乐园 Description 经历了一段艰辛的旅程后,主人公小P乘坐飞艇返回.在返回的途中,小P发现在漫无边际的沙漠中,有一块狭长的绿地特别显眼.往下仔细一看,才发现这是一个游乐场,专为旅途中疲惫的人设计.娱乐场可以看成是一块大小为n×m的区域,且这个n×m的区域被分成n×m个小格子,每个小格子中就有一个娱乐项目.然而,小P并不喜欢其中的所有娱乐项目,于是,他给每个项目一个满意度.满意度为正时表示小P喜欢这个项目,值越大表示越喜欢.为负时表示他不喜欢…
#17. [NOIP2014]飞扬的小鸟 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 4902  Solved: 1879 题目连接 http://uoj.ac/problem/17 Description Flappy Bird 是一款风靡一时的休闲手机游戏.玩家需要不断控制点击手机屏幕的频率来调节小鸟的飞行高度,让小鸟顺利通过画面右方的管道缝隙.如果小鸟一不小心撞到了水管或者掉在地上的话,便宣告失败. 为了简化问题,我们对游戏规则进行了简化…