문제 링크 : https://leetcode.com/problems/third-maximum-number/
주어진 nums에서 세번째로 큰 숫자를 반환한다.
만약에 세번쨰로 큰 숫자가 없다면 가장 큰 숫자를 반환한다.
주어진 조건대로 구현한다면 어렵지는 않은 문제였다.
class Solution:
def thirdMax(self, nums: List[int]) -> int:
nums = sorted(set(nums), reverse= True )
if len(nums) < 3:
return max(nums)
else:
return nums[2]
먼저 중복을 제외한 숫자들을 내림차순해주고
위의 조건에 맞게 nums의 개수가 3개보다 작으면 최대값을 반환하고, 그렇지 않으면 내림차순으로 정렬하였으므로 세번쨰에 위치한 숫자를 반환한다.