본문 바로가기
알고리즘/프로그래머스 PS

[프로그래머스][Level 1][Python] 폰켓몬

by 빛밤하늘 2021. 7. 15.
반응형

밑의 링크는 프로그래머스에서의 문제 링크입니다.

 

코딩테스트 연습 - 폰켓몬

당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.

programmers.co.kr

 

 

 

 

 

 

 

 

파이썬 코드와 결과입니다.

# N마리의 폰켓몬의 종류 번호가 담긴 리스트 nums가 매개변수로 주어집니다.
# 길이 N은 1 이상 10,000 이하의 자연수이고, 항상 짝수입니다.
# 폰켓몬의 종류 번호는 1 이상 200,000 이하의 자연수입니다.
def solution(nums):
    # 서로 다른 폰켓몬 종류의 개수를 저장하는 변수를 선언합니다.
    different_cnt = len(set(nums))
    # 선택하는 폰켓몬의 수를 저장하는 변수를 선언합니다.
    choice = len(nums) // 2

    # 선택하는 폰켓몬 수가 서로 다른 폰켓몬 종류의 개수보다 크다면
    if choice > different_cnt:
        # answer에 different_cnt를 저장합니다.
        answer = different_cnt
    # 선택하는 폰켓몬 수가 서로 다른 폰켓몬 종류의 개수보다 작거나 같다면
    else:
        # answer에 choice를 저장합니다.
        answer = choice

    # answer의 값을 반환합니다.
    return answer

결과

 

 

 

※ 궁금한 부분, 이상한 점 및 오타는 댓글에 부탁드립니다.

※ 더 효율적이고 빠른 정답을 환영합니다.

반응형

댓글