036 · Longest Palindrome
algorithm
Problem
给定一个字符串 s。
请返回:用 s 里的字符可以构造出的最长回文串的长度。
这里的“回文串”指的是:从左往右读和从右往左读都一样的字符串。
注意,只需要返回最长长度,不需要真的把这个回文串构造出来。s 中的每个字符最多只能使用一次。
例如:
s = "abccccdd"
可以用其中一些字符构造出:
"dccaccd"
这个字符串从左往右和从右往左读都一样,长度是:
7
所以答案是 7。
大小写字符是不同的。比如 "A" 和 "a" 不是同一个字符。
Examples
示例 1
Input: s = "abccccdd"
Output: 7
解释:可以构造出长度为 7 的回文串,例如 "dccaccd"。
示例 2
Input: s = "a"
Output: 1
解释:只有一个字符时,它本身就是一个长度为 1 的回文串。
示例 3
Input: s = "Aa"
Output: 1
解释:"A" 和 "a" 是不同字符,不能当作一对使用,所以最长只能取其中一个字符。
Constraints
- \(1 \leq\)
s.length\(\leq 2000\) s只由小写和大写英文字母组成
Link
→ Solution