[프로그래머스] Level1 폰켓몬

HO94·2021년 6월 26일
0

프로그래머스

목록 보기
4/13

2021.06.26

폰켓몬

문제

  • 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.
  • 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다.
  • 당신은 최대한 다양한 종류의 폰켓몬을 가지길 원하기 때문에, 최대한 많은 종류의 폰켓몬을 포함해서 N/2마리를 선택하려 합니다.
  • 가장 많은 종류의 폰켓몬을 선택하는 방법을 찾아, 그때의 폰켓몬 종류 번호의 개수를 return 하도록 solution 함수를 완성해주세요.

각자푸는 30분안에 풀었다!

def solution(nums):
    answer = 0
    # 가져갈 포켓몬 수
    count = int(len(nums) / 2)
    
    # 포켓몬 종류
    kinds = list(set(nums))
    
    answer = len(kinds[:count])
    return answer

set으로 폰켓몬 종류를 세고, 가져갈 수 있는 폰켓몬 수를 구하니 완성.

그런데 사실 폰켓몬 종류가 1가지일 경우를 생각하지 않고, len(kinds[:count])를 작성했는데,
(그렇게되면 몇 마리가 있어도 kinds=[1] 이렇게 되어린다..)
다행히 범위를 벗어나도 슬라이싱이 가능해서 오류가 발생하지 않았다ㅎ

0개의 댓글