문제 링크 (Level 1)
https://programmers.co.kr/learn/courses/30/lessons/1845
나의 코드 (python)
def solution(nums):
answer = 0
# 몇 개 뽑을지 개수
num = len(nums) // 2
# 배열에 중복을 제외한 폰켓몬들 나열
arr = list(set(nums))
if len(arr) > num:
# 배열의 길이가 뽑을 폰켓몬의 수보다 많을 경우
answer = num
else:
# 배열의 길아가 뽑을 폰켓몬의 수보다 적은 경우
answer = len(arr)
return answer
저는 이 문제의 접근을 폰켓몬을 몇 개 뽑을지 구하고 폰켓몬의 중복을 제거한 배열을 set을 통해서 만들었습니다.
이후에 뽑을 폰켓몬 개수보다 중복을 제거한 폰켓몬 배열보다 크면 뽑을 폰켓몬 개수를 answer에 넣습니다.
뽑을 폰켓몬 개수보다 중복을 제거한 폰켓몬 배열이 더 작다면 중복을 제거한 폰켓본 배열의 길이를 answer에 넣습니다.
'코딩공부 > 프로그래머스 (python)' 카테고리의 다른 글
[프로그래머스] 문자열 압축 (python) (0) | 2021.08.02 |
---|---|
[프로그래머스] 숫자 문자열과 영단어 (python) (0) | 2021.07.29 |
[프로그래머스] 모의고사 (python) (0) | 2021.07.27 |
[프로그래머스] 키패드 누르기 (python) (0) | 2021.07.26 |
[프로그래머스] 완주하지 못한 선수 (python) (0) | 2021.07.16 |
댓글