最长对称子串——暴力枚举+注意细节
2017-02-21 17:17
253 查看
5-12 最长对称子串 (25分)
对给定的字符串,本题要求你输出最长对称子串的长度。例如,给定Is PAT&TAP symmetric?,最长对称子串为s PAT&TAP s,于是你应该输出11。
输入格式:
输入在一行中给出长度不超过1000的非空字符串。
输出格式:
在一行中输出最长对称子串的长度。
输入样例:
Is PAT&TAP symmetric?
输出样例:
11
以下为accepted代码
对给定的字符串,本题要求你输出最长对称子串的长度。例如,给定Is PAT&TAP symmetric?,最长对称子串为s PAT&TAP s,于是你应该输出11。
输入格式:
输入在一行中给出长度不超过1000的非空字符串。
输出格式:
在一行中输出最长对称子串的长度。
输入样例:
Is PAT&TAP symmetric?
输出样例:
11
以下为accepted代码
#include <stdio.h> #include <string.h> int main() { int i, j, t, flag, max, cnt; char st[1004]; while(gets(st) != NULL) { int len = strlen(st); max = 1, cnt = 1; for(t = 0; t < len; t++) { flag = 0, i = t, j = len-1; while(i < j) { if(st[i] == st[j]) { if(j - i == 2) flag++; i++, j--; flag += 2; } if(st[i] != st[j]) { j--; i = t; flag = 0; } } if(flag > max) { max = flag; cnt = 0; } } if(cnt) printf("%d\n", max); else printf("%d\n", max); } return 0; }
相关文章推荐
- L2-008. 最长对称子串----暴力+dp+Manacher
- FZUOJ-2128 最长子串(strstr函数枚举暴力)
- 3080 Blue Jeans 求N个字符串的最长子串 暴力枚举+ KMP模板
- PAT L2-008. 最长对称子串(25) (暴力,Manacher算法和DP解决)
- POJ-3080 -求n个字符串最长公共子串-暴力枚举
- 最长对称子串
- L2-008. 最长对称子串
- 团体程序设计天梯赛-练习集 L2-008. 最长对称子串
- L2-008. 最长对称子串
- PAT L2-008. 最长对称子串
- 最长对称子串
- 回文串是指这个字符串无论从左读还是从右读,所读的顺序是一样的;简而言之,回文串是左右对称的。现在,对于一个给定的母串 abcdedcb求最长回文子串的长度
- L2-008. 最长对称子串
- L2-008. 最长对称子串
- PAT-L2-008(最长对称子串)
- hdu 4745 求最长对称子串
- L2-008. 最长对称子串
- CSUoj 2020 Card Hand Sorting 最长递增序列 暴力枚举
- 最长公共子串,暴力做法(补充中...)
- 字符串的(暴力)枚举连续子串1