PAT_1040: Longest Symmetric String
来源:互联网 发布:单片机仿真器下载 编辑:程序博客网 时间:2024/06/06 00:41
Given a string, you are supposed to output the length of the longest symmetric sub-string. For example, given "Is PAT&TAP symmetric?", the longest symmetric sub-string is "s PAT&TAP s", hence you must output 11.
Input Specification:
Each input file contains one test case which gives a non-empty string of length no more than 1000.
Output Specification:
For each test case, simply print the maximum length in a line.
Sample Input:Is PAT&TAP symmetric?Sample Output:
11
备注:用的最基础的dp算法(O(N2) time and O(N2) space),具体思路可参考leetcode上的文章:http://leetcode.com/2011/11/longest-palindromic-substring-part-i.html
#include<stdio.h>#include<stdlib.h>#include<string.h>#define MAXSIZE 1000int main(){char s[MAXSIZE];int *table[MAXSIZE];int i, j, len, slen;int maxlen=1;gets(s);slen = strlen(s);for(i = 0; i < slen; i++){table[i] = (int *)malloc(sizeof(int*)*slen);memset(table[i],0,slen);}for(i=0; i<slen; i++){table[i][i]=1;}for(i=0; i<slen; i++){if(s[i]==s[i+1]){table[i][i+1]=2;maxlen = 2;}}for(len=3; len<=slen; len++)for(i=0; i<slen; i++){j = i+len-1;if(j>slen)break;if(table[i+1][j-1]>0 && s[i]==s[j]){table[i][j] = len;maxlen = len;}}printf("%d",maxlen);return 0;}
- PAT_1040: Longest Symmetric String
- PAT_1040. Longest Symmetric String
- 1040. Longest Symmetric String
- 1040. Longest Symmetric String
- 1040. Longest Symmetric String
- 1040. Longest Symmetric String
- 1040.Longest Symmetric String
- pat1040 Longest Symmetric String
- 1040. Longest Symmetric String
- 1040 Longest Symmetric String
- 1040. Longest Symmetric String
- 1040. Longest Symmetric String
- 1040. Longest Symmetric String
- 1040. Longest Symmetric String
- 1040. Longest Symmetric String
- Longest Symmetric String (25)
- pat 1040 Longest Symmetric String
- 1040. Longest Symmetric String (25)
- 口令管理
- 内存读取
- java poi 读取excel各种数据
- Android 组件类继承关系结构图
- Windows下LDAP服务器配置
- PAT_1040: Longest Symmetric String
- 口令验证函数
- UITableViewController详解
- U-Boot启动过程完全分析
- linux内核部件分析(二)——原子性操作atomic_t
- python 异常
- 利用概要文件进行资源管理
- shell命令中>/dev/null 2>&1的实现原理
- android 橘子汁 在子线程中更新主线程UI 困扰