Q. 숫자로 이루어진 배열인 nums를 인자로 전달합니다.
숫자중에서 과반수(majority, more than a half)가 넘은 숫자를 반환해주세요.
1
딕셔너리에 { 숫자 : 개수 } 로 저장
2
과반수 기준을 정하고 이보다 많은 개수를 가진 숫자를 반환
def more_than_half(nums):
dict = {}
for num in nums:
dict[num] = nums.count(num)
for num in dict:
if dict[num] >= len(nums)/2:
return num
과반수 기준 : len(nums)/2
보다 크거나 같음
def more_than_half2(nums):
result = [num for num in nums if nums.count(num) >= len(nums)/2]
if result :
return result[0]
Review
두가지 버전으로 코드를 짜봤는데 세로로 긴 코드가 가로로 길어진 거 같은 느낌 ..? ㅋㅋㅋ
굳이 딕셔너리에 정리해서 저장하지 않아도 될 것 같아서 2차에선 과감하게 패쓰