zoukankan      html  css  js  c++  java
  • LeetCode409Longest Palindrome最长回文串

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

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

    注意:

    假设字符串的长度不会超过 1010。

    示例 1:

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

    class Solution {
    public:
        int longestPalindrome(string s) {
            map<char, int> save;
            bool flag1 = false;
            int res = 0;
            for(int i = 0; i < s.size(); i++)
            {
                save[s[i]]++;
            }
            for(map<char, int> :: iterator itr = save.begin(); itr != save.end(); itr++)
            {
                if((itr ->second & 1) == 1&& flag1 == false)
                {
                    res += 1;
                    flag1 = true;
                }
                if(itr ->second  > 1)
                {
                    res += (itr ->second  / 2) * 2;
                }
            }
            return res;
        }
    };
  • 相关阅读:
    Java文件输入输出
    数位dp
    https://www.luogu.org/blog/An-Amazing-Blog/mu-bi-wu-si-fan-yan-ji-ge-ji-miao-di-dong-xi
    洛谷
    洛谷
    洛谷
    Java简单高精度合集
    洛谷
    洛谷
    洛谷
  • 原文地址:https://www.cnblogs.com/lMonster81/p/10434102.html
Copyright © 2011-2022 走看看