class Solution {
public:
    int longestConsecutive(vector<int>& nums) {
        int res = 0;
        unordered_set<int> s(nums.begin(), nums.end());
        for (int val : nums) {
            if (!s.count(val)) continue;
            s.erase(val);
            int pre = val - 1, next = val + 1;
            while (s.count(pre)) s.erase(pre--);
            while (s.count(next)) s.erase(next++);
            res = max(res, next - pre - 1);
        }
        return res;
    }
};

相关文章:

  • 2021-08-16
  • 2021-06-17
  • 2021-11-02
  • 2021-10-21
  • 2021-05-22
  • 2021-10-15
  • 2022-12-23
猜你喜欢
  • 2021-04-18
相关资源
相似解决方案