728x90
안녕하세요 여러분들 설날 연휴 잘 보내셨나요? 저는 잘 보냈습니다~ 이제 즐거운 코딩 세계로 떠나볼까요~~~
일단 문제에 대한 자세한 설명은 아래 링크를 참고해주시면 됩니다~
https://school.programmers.co.kr/learn/courses/30/lessons/1845
핵심을 말하자면
N/2 를 출력하냐, 종류의 개수를 출력하냐 둘 중에 하나를 하면 되는데
만약 N/2가 종류의 개수보다 작다면 N/2 뽑으면 되고 아니라면 종류의 개수를 뽑으면 된다.
해당 내용을 아래 코드로 작성한 것이다.
해시 개념인 set을 이용하여 작성해보았다.
def solution(nums):
answer = 0
s = set(nums) # set() 집합의 기능, set 안에는 중복된 값이 없음
n_2 = len(nums) / 2
if n_2 >= len(s):
answer = len(s) # len은 집합의 크기
else:
answer = n_2
return answer'코딩' 카테고리의 다른 글
| 프로그래머스 - 코딩테스트 고득점 Kit - 해시 - 전화번호 목록 (python) (2) | 2023.01.23 |
|---|---|
| 프로그래머스 - 코딩테스트 고득점 Kit - 해시 - 완주하지 못한 선수 (python) (0) | 2023.01.23 |
| 프로그래머스 - 코딩테스트 고득점 Kit - 정렬 - H-Index (python) (0) | 2023.01.19 |
| 프로그래머스 - 코딩테스트 고득점 Kit - 정렬 - K번째수 (python) (0) | 2023.01.19 |
| 프로그래머스 - 코딩테스트 고득점 Kit - 정렬 - 가장 큰 수 (python) (실패...) (0) | 2023.01.19 |