// Codeforces #316 E Pig and Palindromes
//
// 题目大意:
//
// 给你一张地图,n*m每个点是一个字母,现在从(0,0)出发,
// 每次只能往右或者往下走,求走到(n-1,m-1)形成回文串的方法数.
//
// 解题思路:
//
// 动态规划.首先.如果起点和终点的字母不相同,那么肯定
// 不能形成回文串,直接输出0.对于能形成...
分类:
其他好文 时间:
2015-08-14 22:46:51
阅读次数:
653
链接
题解链接:点击打开链接
题意:
给定n个点的树,m个询问
下面n-1个数给出每个点的父节点,1是root
每个点有一个字母
下面n个小写字母给出每个点的字母。
下面m行给出询问:
询问形如 (u, deep) 问u点的子树中,距离根的深度为deep的所有点的字母能否在任意排列后组成回文串,能输出Yes.
思路:dfs序,给点重新标...
分类:
编程语言 时间:
2015-08-14 21:32:22
阅读次数:
510
---恢复内容开始---DescriptionA palindrome is a symmetrical string, that is, a string read identically from left to right as well as from right to left. You ...
分类:
其他好文 时间:
2015-08-14 21:15:40
阅读次数:
109
题意:给定一棵树,n个节点,每个节点处有一个字母,结点的深度定义为节点到根结点1的距离,
有m个询问(u,v),每次回答以结点u为根的子树的深度为v的那些节点处的字母能否组成一个回文串,特别的,空串也是回文串。
思路:首先说明判断回文串的方法,只要出现次数为奇数个字母个数不超过2,那么这些字母一定可以组成回文串。
接下来考虑将树转成线性结构。
利用dfs+时间戳将结点按照深度存入一个线性结...
分类:
其他好文 时间:
2015-08-14 17:12:31
阅读次数:
102
d[i]表示前面i个字符划分成的最小回文串个数,那么转移i字符和之前的某个字符j构成回文串形成的新划分,所以要判断前面的字符j+1到i是不是回文串,可以用Manacher算法预处理出来。#include #include #include #includeusing namespace std;co...
分类:
其他好文 时间:
2015-08-13 14:07:59
阅读次数:
141
Hrdv is interested in a string,especially the palindrome string.So he wants some palindrome string.A sequence of characters is a palindrome if it is t...
分类:
其他好文 时间:
2015-08-12 23:19:35
阅读次数:
111
算法原理:manacher算法:定义数组p[i]表示以i为中心的(包含i这个字符)回文串半径长将字符串s从前扫到后for(inti=0;imaxlen,则初始化p[i+k]=1;//本身是回文串然后p[i+k]左右延伸,即while(s[i+k+p[i+k]]==s[i+k-p[i+k]])++p[...
分类:
编程语言 时间:
2015-08-12 23:03:33
阅读次数:
135
DescriptionA palindrome is a symmetrical string, that is, a string read identically from left to right as well as from right to left. You are to write...
分类:
其他好文 时间:
2015-08-12 21:33:11
阅读次数:
113
题意:给出一个字符串,要求出一个最长子串的长度,子串满足可以将其分成三部分,第一部分跟第二部分互为回文串,第三部分跟第一部分一样。
做法:
先用求回文串的Manacher算法,求出以第i个点和第i+1个点为中心的回文串长度,记录到数组c中 比如 10 9 8 8 9 10 10 9 8 我们通过运行Manacher求出第i个点和第i+1个点为中心的回文串长度 0 0 6 0 0 6 0...
分类:
其他好文 时间:
2015-08-12 19:38:37
阅读次数:
95
先用求回文串的Manacher算法,求出以第i个点和第i+1个点为中心的回文串长度,记录到数组c中 比如 10 9 8 8 9 10 10 9 8 我们通过运行Manacher求出第i个点和第i+1个点为中心的回文串长度 0 0 6 0 0 6 0 0 0
两个8为中心,10 9 8 8 9 10是个回文串,长度是6。 两个10为中心,8 9 10 10 9 8是个回文串,长度是6。
...
分类:
其他好文 时间:
2015-08-12 19:30:43
阅读次数:
80