美团318笔试第三题回文串

想问问大家我这个思路有问题吗?
首先遍历一遍字符串,记录下不匹配的位置有几对(如果字符串为奇数长度,也记录下中间落单的那个位置),根据题目要求,这个数量应该为0,1,2。然后分情况讨论。
如果不匹配位置为2对,那么这两对都把较大的改成较小的即可。
如果不匹配位置为1时,有两种情况,第一种是其中有一个为a,另一个不是,此时将另一个不为a的改为a,且如果字符串长度为奇数,那么将中间落单的改为a。第二种是两个都不为a,那么将这两个都改为a即可。
如果不匹配位置为0,说明本身就是回文串。此时再次遍历,找到第一对不为a的位置,将他们都改为a即可。如果每一对都为a,且还剩余修改次数,那么只能改中间落单的为a。
全部评论
我也是这么做的
点赞 回复 分享
发布于 2023-03-18 13:48 广东
我觉得思路没什么问题,但是只过了27%。
点赞 回复 分享
发布于 2023-03-18 13:50 北京

相关推荐

01-14 12:08
门头沟学院 Java
神哥了不得:(非引流)1.既然发出来了简历,就稍微提一点点小建议,确实简历很不错了,练手项目可以换一些质量高的,工作内容,可以加上一些量化指标,比如第一条系统响应速度由多少变成多少,减少了百分之多少,第4条就很不错。2.广投,年前实习招募比较少了
点赞 评论 收藏
分享
小狗吃臭臭:以后用不到你设计的手机了,可惜!
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务