求最长回文串长度板子
2016-08-04 22:36
148 查看
#include<cstdio> #include<cstring> using namespace std; int a[10000010]; int mannchar(int *p,int n) { int s,e,i,max=0; s=0; while(s<=n) { i=e=s; while(p[s]==p[e])e++; s=e; e--; while(p[i]>=p[i-1]&&p[i-1]==p[e+1]) i--,e++; int t=e-i+1; if(max<t) max=t; } return max; } int main() { a[0]=9999;//*如果是字符串就 a[0] = '$' int n,i,t; scanf("%d",&t); while(t--) { scanf("%d",&n); for(i=1;i<=n;i++) scanf("%d",&a[i]); printf("%d\n",mannchar(a,n)); } }
相关文章推荐
- Java给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度.
- pat 中求解最长回文串的长度
- 腾讯2016实习生笔试题 获得最长回文串长度
- 【数据结构+算法】【(线性)动态规划】--- 求最长回文串的长度
- leetcode-409. Longest Palindrome 最长回文串的长度
- UVa 11404 回文子序列(LCS求最长回文串长度)
- 最长回文串长度——manacher算法
- 回文串是指这个字符串无论从左读还是从右读,所读的顺序是一样的;简而言之,回文串是左右对称的。现在,对于一个给定的母串 abcdedcb求最长回文子串的长度
- 编程之美hiho一下求最长回文串的长度
- manacher算法求最长回文串长度
- [HDU 5340] Three Palindromes 最长回文串
- c#实现获取字符串阵列中元素最长或最短的长度
- CODEFORCES 270D Greenhouse Effect <求最长递增子序列长度的对立事件>
- UVA 497 Strategic Defense Initiative【最长严格递增子序列长度及打印】
- 输入字符串,找出相同且长度最长的子字符串,输出
- 吉哥系列故事——完美队形II - HDU 4513 最长回文串
- HDOJ 5744 Keep On Movin(最大化最短回文串长度)
- 【动态规划】之求最长上升子序列长度(难度:2星)
- 在一个字符串中找出以同样的顺序连续出现在另一个字符串中的最长连续字符串的长度
- 编写一个程序,一行行的读取输入行,直至到达文件尾。算出每行输入行的长度,然后把最长的那行打印出来