bzoj 2251】的更多相关文章

2251: [2010Beijing Wc]外星联络 Time Limit: 30 Sec  Memory Limit: 256 MBSubmit: 424  Solved: 232[Submit][Status][Discuss] Description 小 P 在看过电影<超时空接触>(Contact)之后被深深的打动,决心致力于寻 找外星人的事业.于是,他每天晚上都爬在屋顶上试图用自己的收音机收听外星 人发来的信息.虽然他收听到的仅仅是一些噪声,但是他还是按照这些噪声的高 低电平将接收到…
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=2251 题解: 后缀数组,倍增,RMQ 题意:把重复次数超过 1次的子串按字典序输出它们重复的次数. 构建后缀数组,得到 height[]按排名从小到大枚举每个后缀 i,考虑它产生的之前没有出现过的子串是否重复次数大于1次.用到倍增(不想写二分)求出: 包含 i的最大[l,r]范围使得这个范围内的后缀与 i后缀的 LCP大于当前判断的子串的长度.然后把合法的子串的重复次数输出即可. 代码:…
2251: [2010Beijing Wc]外星联络 Time Limit: 30 Sec  Memory Limit: 256 MBSubmit: 795  Solved: 477[Submit][Status][Discuss] Description 小 P 在看过电影<超时空接触>(Contact)之后被深深的打动,决心致力于寻找外星人的事业.于是,他每天晚上都爬在屋顶上试图用自己的收音机收听外星人发来的信息.虽然他收听到的仅仅是一些噪声,但是他还是按照这些噪声的高低电平将接收到的信号…
第一道后缀数组 后缀数组要维护三个数组:sa(suffix array), rk(rank)和ht(height). 含义分别是: sa[i]:将后缀按照字典序排序后,第i大的后缀的起始位置. rk[i]:起始位置为i的后缀的排名. ht[i]:起始位置为i的后缀与排名为rk[i]-1的后缀的最长公共前缀. 对于任意一个字串,一定是某个后缀的前缀. 然后从sa[1]开始,统计字串,每个后缀sa[i]的可能的字串的个数(不与前面统计的重复)是:n-sa[i]+1-ht[sa[i]] 然后就这羊枚举…
题目大意 http://www.lydsy.com/JudgeOnline/problem.php?id=2251 题解 本来以为这道题应该从01序列的性质入手 结果就想歪了 等自己跳出了01序列这个思维 就马上看到了一颗Trie树... 这道题的较难思考的地方在于无法确定出每个字符串的字典序 所以我们想到了和字典序有关的东西sort+string字典树 我们知道所有后缀的所有前缀一定能取到所有字串 字典树的dfs序列得到的dfs序是按照字典序排列的 所以我们可以理所当然地用字典树来搞这个东西…
先求SA,然后按字典序从小到大枚举子串,每到一个后缀从长到短枚举子串(跳过长为he[i]的和前一段重复的子串),然后维护一个点p,保证i~p之间最小的he>=当前枚举长度,p是单调向右移的 然后把每个后缀的结果倒着输出即可 #include<iostream> #include<cstdio> #include<cstring> using namespace std; const int N=3005; int n,m,wa[N],wb[N],wv[N],wsu…
Description 小 P 在看过电影<超时空接触>(Contact)之后被深深的打动,决心致力于寻找外星人的事业.于是,他每天晚上都爬在屋顶上试图用自己的收音机收听外星人发来的信息.虽然他收听到的仅仅是一些噪声,但是他还是按照这些噪声的高低电平将接收到的信号改写为由 0 和 1 构成的串, 并坚信外星人的信息就隐藏在其中.他认为,外星人发来的信息一定会在他接受到的 01 串中重复出现,所以他希望找到他接受到的 01 串中所有重复出现次数大于 1 的子串.但是他收到的信号串实在是太长了,于…
思路: i~n加到Trie树里 经过的边权+1 DFS一遍 搞定~ //By SiriusRen #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define N 3005 int n,all;char a[N]; struct Trie{int next[2],num;}trie[N*N]; void insert(int x){ int now=0; fo…
2018.12.18 1.[USACO Platinum C] 2.[Gym 102028H] 3.[BZOJ 2750] 4.[BZOJ 3238] 5.[BZOJ 4310] 6.[BZOJ 3879] 2018.12.19 1.[BZOJ 4278] 2.[BZOJ 3832] 3.[ZROI #138] 4.[ZROI #139] 5.[ZROI #140] 2018.12.20 1.[BZOJ 2320] 2.[BZOJ 2119] 3.[BZOJ 4892] 4.[POJ 1743]…
2127: happiness Time Limit: 51 Sec  Memory Limit: 259 MBSubmit: 1815  Solved: 878[Submit][Status][Discuss] Description 高一一班的座位表是个n*m的矩阵,经过一个学期的相处,每个同学和前后左右相邻的同学互相成为了好朋友.这学期要分文理科了,每个同学对于选择文科与理科有着自己的喜悦值,而一对好朋友如果能同时选文科或者理科,那么他们又将收获一些喜悦值.作为计算机竞赛教练的scp大老板…