pta L2-008 最长对称子串

L2-008 最长对称子串

分数 25

全屏浏览

切换布局

作者 陈越

单位 浙江大学

对给定的字符串,本题要求你输出最长对称子串的长度。例如,给定Is PAT&TAP symmetric?,最长对称子串为s PAT&TAP s,于是你应该输出11。

输入格式:

输入在一行中给出长度不超过1000的非空字符串。

输出格式:

在一行中输出最长对称子串的长度。

输入样例:

复制代码
Is PAT&TAP symmetric?

输出样例:

复制代码
11

代码长度限制

16 KB

时间限制

200 ms

内存限制

64 MB

代码:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main() {
    string s;
    getline(cin,s);
    int ans = 1;
    int len = s.length();
    for (int i = 0; i < (len/2)+1; i++) {
        for (int j = len-1; j >= (len/2)-1; j--) {
            if (s[i] == s[j]) {
                int t1 = i;
                int t2 = j;
                bool flag = true;
                while (t1 < t2) {
                    t1++;
                    t2--;
                    if (s[t1] != s[t2]) {
                        flag = false;
                        break;
                    }
                }
                if (flag == true) {
                    ans = max(ans,j-i+1);
                }
            }
         }
    }
    cout << ans << endl;
    return 0;
}
相关推荐
计算机安禾12 小时前
【c++面向对象编程】第21篇:运算符重载基础:语法、规则与不可重载的运算符
java·前端·c++
开发者联盟league12 小时前
在cursor中配置c/c++开发环境
c语言·开发语言·c++
澈20713 小时前
平衡二叉树:AVL与红黑树终极对比
数据结构·c++·红黑树
ComputerInBook13 小时前
C++ 中的 lambda 表达式
开发语言·c++·lambda表达式·匿名函数
刃神太酷啦13 小时前
《网络基础全链路深度解析:从Socket编程到HTTPS与TCP/UDP内核机制》----《Hello Linux!》(25)
linux·运维·c语言·网络·c++·tcp/ip·https
paeamecium14 小时前
【PAT甲级真题】- Shuffling Machine (20)
c++·算法·pat考试·pat
不想写代码的星星14 小时前
C++协程从入门到放弃?不,是从入门到手搓调度器
开发语言·c++
redaijufeng14 小时前
C++构造函数详解:从基础原理到实际应用
java·jvm·c++
兵哥工控14 小时前
MFC实现 Modbus-TCP 实时采集ZH-T08R 电阻模块阻值实例
c++·tcp/ip·mfc·modbus-tcp
ComputerInBook15 小时前
C++ 14 相比 C++ 11新增之特征
开发语言·c++·c++ 14