본문 바로가기
알고리즘

[프로그래머스- 폰켓몬][파이썬] -3일차

by Jyujae 2022. 5. 28.

https://programmers.co.kr/learn/challenges

(문제 본문)

 

-- 풀이

 

고민이 많이 되었던 문제였다. 먼저 itertolls permutations 을 이용했는데 시간 초과도 났고,

튜플 하나하나를 돌면서 count를 하기 어려웠다.

그래서 set을 떠올렸고, [3,1,2,3]에서 3은 같은 포켓몬이기 때문에, 종류에는 상관이 없었다.

set으로 중복을 지웠다. ->

if 중복 없는 리스트 >= 최대 뽑을 수 있는 수:

answer= 최대 뽑을 수 있는 수

ex) 중복 없는 리스트 길이가 3이고, 최대 뽑을 수 있는 수가 2 라면, 서로 다른 3개 중에 2개를 뽑는 case

 

elif 중복 없는 리스트 < 최대 뽑을 수 있는 수:

ex) 중복 없는 리스트 길이가 2이고, 최대 뽑을 수 있는 수가 3이라면, max는 2

 

너무 어렵게 생각했다가 삥 돌아갔다