728x90
반응형
https://programmers.co.kr/learn/courses/30/lessons/1845
코딩테스트 연습 - 폰켓몬
당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.
programmers.co.kr
풀이
이 문제는 N마리의 포켓몬중 N/2의 포켓몬을 가질 수 있는데, 이때 같은 종류의 포켓몬이 있을 수도 있다.
그래서 포켓몬이 들어있는 nums를 set을 이용해 중복값을 제거했다.
그리고 len(nums_set)이 N/2보다 작으면 nums_set의 길이+중복된 포켓몬을 뽑아야하기 때문에 뽑을 수 있는 최대 포켓몬의 종류는 len(nums_set)이 된다.
len(nums_set)이 N/2보다 크거나 같으면 중복되지 않게 포켓몬을 뽑을 수 있기 때문에 뽑을 수 있는 최대 포켓몬의 종류는 N/2가 된다.
1
2
3
4
5
6
7
8
9
|
def solution(nums):
answer = 0
cnt=len(nums)/2
nums_set=set(nums)
if len(nums_set)<cnt:
answer=len(nums_set)
else:
answer=cnt
return answer
|
cs |
728x90
반응형
'Python3 > 프로그래머스' 카테고리의 다른 글
2022.06.01 [프로그래머스] (python 파이썬) 최소직사각형 (0) | 2022.06.01 |
---|---|
2022.06.01 [프로그래머스] (python 파이썬) 3진법 뒤집기 (0) | 2022.06.01 |
2022.06.01 [프로그래머스] (python 파이썬) 모의고사 (0) | 2022.06.01 |
2022.05.31 [프로그래머스] (python 파이썬) 완주하지 못한 선수 (0) | 2022.05.31 |
2022.05.31 [프로그래머스] (python 파이썬) 전화번호 목록 (0) | 2022.05.31 |
댓글