lc594. Longest Harmonious Subsequence

263 阅读1分钟
  1. Longest Harmonious Subsequence Easy

423

57

Favorite

Share We define a harmounious array as an array where the difference between its maximum value and its minimum value is exactly 1.

Now, given an integer array, you need to find the length of its longest harmonious subsequence among all its possible subsequences.

Example 1:

Input: [1,3,2,2,5,2,3,7] Output: 5 Explanation: The longest harmonious subsequence is [3,2,2,2,3].

Note: The length of the input array will not exceed 20,000.

思路:collections.Counter(nums) 获取每个元素出现的次数,遍历,获取连续数字出现的最大值

代码:python3

class Solution:
    def findLHS(self, nums: List[int]) -> int:
        dic=collections.Counter(nums)
        count=0
        for key in dic:
            if (key+1) in dic:
                count=max(count,dic[key]+dic[key+1])
        return count