1040. Longest Symmetric String (25)

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

题目大意:

给定一个字符串,你应该输出最长对称字符串的长度。例如,给定"Is PAT&TAP symmetric?",因此你必须输出11.
输入规格:
数个输入文件包含一个测试用例,该测试用例的长度不超过1000.
输出规范:
对于每个测试用例,只需在一行中打印最大的长度。

代码:

解法一:

#include
#include
#include
#include
using namespace std;
int main()
{
    int i,j,n,m,k,t,Max=1;
    string s;
    getline(cin,s);
    for(i=0;iMax)
                {
                    Max=str1.size();
                }
            }

        }
    }
    printf("%d\n",Max);
    return 0;
}

解法二:

#include
#include
#include
using namespace std;
int dp[1010][1010];
int main()
{
    string str;
    int i,j,m,k,t;
    getline(cin,str);
    fill(dp[0],dp[0]+1010*1010,1);
    int n=str.length();
    //printf("%d\n",n);
    int Max=1;
    for(i=0;i

 

你可能感兴趣的:(PAT甲级)