leetcode 409 긴 회문 긴 회문 순서

leetcode 409 긴 회문 긴 회문 순서

leetcode 2020 3월 1일 질문 매일 펀치

제목 :
대문자와하는 글자 상동 순서에 의해 가장 긴을 찾기 위해 구성, 주어진 포함 소문자 문자열입니다. 건설 과정에서 참고 대소 문자를 구분하시기 바랍니다. 이에 따라 "AA"는 회문 문자열로 사용할 수 없습니다.
참고 :
문자열의 길이가없는 이상 1010 이상이다 가정.
예 1 :
입력 : "abccccdd"
7 : 출력
설명 : 우리는 긴 문자열, 길이가 7 "dccaccd"회문입니다 구성 할 수 있습니다.

생각 : 파이썬 카운트 제목 : 문자열 짝수 만 짝수 넣어 남은 홀수 열의 숫자 외에 제 1 중간에 배치 될 수 있고, 구성 할 수 있습니다.

세부 사항 :

  1. 중복 제거 : 목록 (세트 (들))
  2. 개수 : s.count를 ( 'A')

코드 :

class Solution(object):
    def longestPalindrome(self, s):
        """
        :type s: str
        :rtype: int
        """
        ans = 0
        odd = True
        for d in list(set(s)):
            if s.count(d)%2==0:#偶数个
                ans+=s.count(d)
            else:
                if odd:
                    ans+=s.count(d)
                    odd=False
                else:
                    ans+=s.count(d)-1
        return ans

이 블로그는 소스를 표시이 문서에 링크를 첨부하시기 바랍니다, 지침을 환영 복제, 원래의 작품입니다, 감사합니다!

게시 20 개 원래 기사 · 원 찬양 한 · 전망 (194)

추천

출처blog.csdn.net/weixin_43973433/article/details/104964398