Skip to content

Instantly share code, notes, and snippets.

@kuntalchandra
Created April 1, 2021 10:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kuntalchandra/5d3eccfc2b11d0ffd964c759c9277733 to your computer and use it in GitHub Desktop.
Save kuntalchandra/5d3eccfc2b11d0ffd964c759c9277733 to your computer and use it in GitHub Desktop.
Given an array of integers A, return the largest integer that only occurs once.
"""
Given an array of integers A, return the largest integer that only occurs once.
If no integer occurs once, return -1.
Example 1:
Input: [5,7,3,9,4,9,8,3,1]
Output: 8
Explanation:
The maximum integer in the array is 9 but it is repeated. The number 8 occurs only once, so it's the answer.
Example 2:
Input: [9,9,8,8]
Output: -1
Explanation:
There is no number that occurs only once.
"""
class Solution:
def largestUniqueNumber(self, A: List[int]) -> int:
if not A:
return -1
numbers = {}
for number in A:
if number in numbers:
numbers[number] = numbers[number] + 1
else:
numbers[number] = 1
largest = -1
for number in numbers:
if numbers[number] > 1:
continue
if largest < number:
largest = number
return largest
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment