题意:给一颗树,根节点深度为1,每一个节点都代表一个子母。数据输入:节点数 询问数从编号为2的节点开始依次输入其父节点的编号(共有节点数减1个数字输入)字符串有节点数个小写字母接下来询问a b代表以a为根节点的子树在深度为b(包含)的范围内所有节点的字母能否组成回文串。能输出Yes,不能输出No思路...
分类:
其他好文 时间:
2015-08-17 11:48:11
阅读次数:
160
UVA
11404 - Palindromic Subsequence
求给定字符串的最长回文子序列,长度一样的输出字典序最小的。
对于
[l, r] 区间的最长回文串,他可能是[l+1, r] 和[l, r-1]两个区间的结果。或者当s[l] == s[r]时,区间[l+1, r-1]的结果再加上以s[l], s[r]为首尾的子序列。
dp[l][r]...
分类:
其他好文 时间:
2015-08-16 21:23:11
阅读次数:
99
题目链接: 570 D. Tree Requests题目描述: 给出一棵树,有n个节点,1号节点为根节点深度为1。每个节点都有一个字母代替,问以结点x为根的子树中高度为h的后代是否能够经过从新排序变成一个回文串?解题思路: 判断是不是回文串,可以统计集合中出现过的字母的个数,出现奇数次的字母个...
分类:
其他好文 时间:
2015-08-16 19:39:57
阅读次数:
134
题目链接: 570 E. Pig and Palindromes题目描述: 有一个n*m的矩阵,每个小格子里面都有一个字母。Peppa the Pig想要从(1,1)到(n, m)。因为Peppa the Pig是一个完美主义者,她想要她所经过的路径上的字母组成的字符串是一个回文串,现在Pepp.....
分类:
其他好文 时间:
2015-08-16 17:58:45
阅读次数:
266
题目链接
题意:
给定n个点的树,m个询问
1是root,下面给出2——n每个点的父节点,
每个点有一个字母
下面n个小写字母给出每个点的字母。
下面m行给出询问:
询问形如 (u, deep) 问u点的子树中,距离根的深度为deep的所有点的字母能否在任意排列后组成回文串,能输出Yes.不能输出No
根到根的deep = 1,以此类推。
思路:
...
分类:
其他好文 时间:
2015-08-16 12:27:11
阅读次数:
210
题意:
告诉你一颗树的父子关系,1节点为根,再告诉你每个点上的字母。
问 v节点 子树(包括v节点)在第h行的所有节点的字母能否组成回文串。
做法:
先用dfs 搜索 把所有节点标个左标号和右标号。 这样标号以后,每个节点 用左标号 当自己 新的标号。 然后 子树所有节点 的新标号 肯定在 子树根节点的 左右标号之间。
标号之后分层来做。
每层 对每个字母分别做统计。
把该层所有节点 的 左标号 在树状数组中+1. 然后对于该层的所有询问 做 树状数组统计,(sum(rit[v])-sum(lft[v...
分类:
编程语言 时间:
2015-08-16 12:26:18
阅读次数:
167
UVA 11584 - Partitioning by Palindromes求一个字符串最少可以被分为几个回文字串。如aaadbccb 可以被分为aaa d bccb 三个。n^2预处理出w[i][j],即i到j段是否为回文。为回文的条件为s[i] == s[j] 并且w[i+1][j-1]为回文。如此,我们以位子i为状态,dp[i]表示在i之前的字符最少可以被分为多个子回文串。dp[i] = m...
分类:
其他好文 时间:
2015-08-16 00:42:05
阅读次数:
132
求出一个连续子序列,这个子序列由三部分ABC构成,其中AB是回文串,A和C相同,也就是BC也是回文串。求这样一个最长的子序列。Manacher算法是在所有两个相邻数字之间插入一个特殊的数字,比如-1,Manacher算法跑完之后,就计算出每个数字为中心的回文子序列的最大长度由题意可以知道,AB和BC...
分类:
其他好文 时间:
2015-08-15 18:06:32
阅读次数:
115
Problem D:题意:给定一棵n个点树,每个点有一个字母,有m个询问,每次询问某个节点x的子树中所有深度为k的点能否组成一个回文串分析:一堆点能组成回文串当且仅当数量为奇数的字母不多于1个,显然这个状态可以用二进制表示 那么对于单个询问如何快速找到所有符合要求的点呢? 这里可以考虑树...
分类:
其他好文 时间:
2015-08-15 16:18:19
阅读次数:
89
题目:一棵树上每个节点有个字符值,询问每个节点的深度为h的子节点的字符是否能组成一个回文串。思路:首先是奇妙的dfs序和时间戳,通过记录每个节点的dfs进出时间,可以发现某个节点的子节点的进出时间均在该节点的进出时间范围内(这是很直观的dfs的性质),这样可以把树形结构转变为线性结构,方便进行各种处...
分类:
其他好文 时间:
2015-08-15 01:22:11
阅读次数:
175