CF1825A

news/发布时间2024/5/18 12:50:54

CF1825A

题目

给你一个回文字符串,找出里边长度最大的非回文字符串子串并输出长度,如果没有则输出 \(-1\)

输入

t \((1 \le t \le 50)\) 个测试样例,每个样例长度 \(\le 1000\)

输出

每行输出最长非回文字符串子串长度,如果没有就输出 \(-1\)

分析

观察得出如果有答案,那么最长子串一定是以 \(s[0]\) 开头的,所以我们只需要从后往前遍历子串结尾,判断是否是回文串即可

注意 :千万不可以凭借开头和结尾不同去找子串,虽然这样一定是非回文串,但不能保证最长,比如 aabbaa 这个样例,如果按开头结尾不同去找,输出答案是 \(4\) ,即 aabb ,但是正确答案是 \(5\) ,即 aabba

代码

#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
bool check(char p[], int end)
{int l = 0, r = end;while (l < r){if (p[l] != p[r])return false;l++, r--;}return true;
}
int main()
{int t;scanf("%d", &t);while (t--){char s[50];scanf("%s", s);int ans = -1;for(int j = strlen(s) - 1; j > 0; j --){if (!check(s, j)){ans = j + 1;break;}}printf("%d\n", ans);}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ulsteruni.cn/article/02573258.html

如若内容造成侵权/违法违规/事实不符,请联系编程大学网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

4-微信小程序 相关知识点代码示例

基于上篇文章的理论文本的介绍来进行相关代码的演示和例子 该篇文章需注意,在微信小程序的使用时,应先熟悉里面每个文件的作用,在第二篇文章有详细记载,一般用的比较多的是wxml、wxss、ws.js 对应网站的开发就是html、css、js、页面的内容及框架、页面的美化、页面的基本功…

服务器

ARM64、x86基础知识和区别 今天小编就带你深入了解CPU的这两大架构:ARM和X86。ARM ARM64是CPU构架的一种,通常用于手机、平板等CPU,目前笔记本电脑也会采用ARM64构架的CPU。 x86 x86是CPU构架的一种,通常用于笔记本电脑、台式电脑、服务器、超级计算机。作者:物非0人非 链…

组件功能

可视化 —— watch

米联客MLK-CM04-9EG-15EG AMD MPSOC核心模块硬件手册

1 整体概述 MLK-04-9EG/15EG-1156核心模块是米联客电子Zynq UltraScale+系列开发平台的全新高端产品。其核心模块集成电源管理:0.85V核心电源,最大输出48A。用户基于核心模块设计功能底板(提供功能底板设计方案)。降低项目功能底板设计难度和生产成本,加速项目开发。其应用…

五个月,秒杀,38个大的篇章,126+篇文章、视频、小册,150+源码分支,完美收官!

大家好,我是冰河~~ 经过四个多月的坚持,《Seckill秒杀系统》终于接近尾声了,也感谢大家这四个多月以来的坚持和陪伴,也相信大家在《Seckill秒杀系统》专栏中,学到了不少知识和技术。接下来,我们就一起对《Seckill秒杀系统》专栏做个总结。 一、总体概述 在《Seckill秒杀系…

基于 ActionFilters 的限流库DotNetRateLimiter使用

前言 在构建API项目时,有时出于安全考虑,防止访问用户恶意攻击,希望限制此用户ip地址的请求次数,减轻拒绝服务攻击可能性,也称作限流。接下来,我们就来学习开源库DotNetRateLimiter 如何轻松实现限流。 项目使用配置 安装Nuget包 在新建立的WebAPI项目中,通过Nuget包管理…