DEV Community

Abhishek Chaudhary
Abhishek Chaudhary

Posted on

2 1

Find All Lonely Numbers in the Array

You are given an integer array nums. A number x is lonely when it appears only once, and no adjacent numbers (i.e. x + 1 and x - 1) appear in the array.

Return all lonely numbers in nums. You may return the answer in any order.

Example 1:

Input: nums = [10,6,5,8]
Output: [10,8]
Explanation:

  • 10 is a lonely number since it appears exactly once and 9 and 11 does not appear in nums.
  • 8 is a lonely number since it appears exactly once and 7 and 9 does not appear in nums.
  • 5 is not a lonely number since 6 appears in nums and vice versa. Hence, the lonely numbers in nums are [10, 8]. Note that [8, 10] may also be returned.

Example 2:

Input: nums = [1,3,5,3]
Output: [1,5]
Explanation:

  • 1 is a lonely number since it appears exactly once and 0 and 2 does not appear in nums.
  • 5 is a lonely number since it appears exactly once and 4 and 6 does not appear in nums.
  • 3 is not a lonely number since it appears twice. Hence, the lonely numbers in nums are [1, 5]. Note that [5, 1] may also be returned.

Constraints:

  • 1 <= nums.length <= 105
  • 0 <= nums[i] <= 106

SOLUTION:

from collections import Counter

class Solution:
    def findLonely(self, nums: List[int]) -> List[int]:
        numctr = Counter(nums)
        op = []
        for num in nums:
            if numctr[num] == 1 and num - 1 not in numctr and num + 1 not in numctr:
                op.append(num)
        return op
Enter fullscreen mode Exit fullscreen mode

Heroku

This site is built on Heroku

Join the ranks of developers at Salesforce, Airbase, DEV, and more who deploy their mission critical applications on Heroku. Sign up today and launch your first app!

Get Started

Top comments (0)

AWS GenAI LIVE image

How is generative AI increasing efficiency?

Join AWS GenAI LIVE! to find out how gen AI is reshaping productivity, streamlining processes, and driving innovation.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay