409. 最长回文串

409. 最长回文串 - 力扣(LeetCode)

给定一个包含大写字母和小写字母的字符串 s ,返回 通过这些字母构造成的 最长的 回文串 的长度。

在构造过程中,请注意 区分大小写 。比如 "Aa" 不能当做一个回文字符串。

示例 1:

复制代码
输入:s = "abccccdd"
输出:7
解释:
我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。

示例 2:

复制代码
输入:s = "a"
输出:1
解释:可以构造的最长回文串是"a",它的长度是 1。

题解·

cpp 复制代码
class Solution {
public:
    int longestPalindrome(string s) {
        map<char,int> dp;
        for(int i=0;i<s.size();i++){
            dp[s[i]] +=1;
        }
        int res = 0;
        int ins = 0;
        for(const auto& [key,value] : dp){
            if(value%2==0){
                res +=value;
            }else{
                res +=value-1;
                ins =1;
            }
        }
        res +=ins;
        return res;
    }
};
相关推荐
沫璃染墨9 分钟前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html
维克兜率天24 分钟前
【维克】指数调整:哪些股票会被“强制买入“?
人工智能·python·算法
罗西的思考1 小时前
【轻量化复刻大模型】线性注意力交互式演示
人工智能·算法·机器学习
神也畏惧菠萝1 小时前
Day08 Python流程控制从入门到上瘾:if/match/while/for四件套,从B站登录一路打到猜数字游戏
python·算法·数据存储·for·while·if·ifelse
揽星河..2 小时前
【C语言】分支和循环
c语言·c++·算法
Fuyo_11193 小时前
C++ AVL树保姆级详解:从平衡因子到四大旋转机制
java·c++·算法
jktantan3 小时前
每个节点 41 字节:把一棵百万节点树拆进 14 个 typed array
前端·javascript·vue.js·算法·typescript
揽星河..4 小时前
【C语言】猜数字游戏
c语言·算法·游戏
傲世仙尊4 小时前
继承-类设计层次复用切片转换与菱形继承的死结
c++