3 solutions
-
1
枚举奇偶,向两边扩张 #include<bits/stdc++.h> using namespace std; int main() { string s; getline(cin,s); int res=0; for(int i=0;i<s.size();i++) { int l=i-1,r=i+1; //回文串长度是奇数的情况 while(l>=0&&r<s.size()&&s[l]==s[r]) l--,r++; res=max(res,r-l-1); l=i,r=i+1; //回文串长度是偶数的情况 while(l>=0&&r<s.size()&&s[l]==s[r]) l--,r++; res=max(res,r-l-1); } cout<<res; return 0; }
Information
- ID
- 79
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 3
- Tags
- # Submissions
- 89
- Accepted
- 23
- Uploaded By