프로그래머스 고득점kit 체육복 | Python
🔎 문제 설명
💚 Level 1
- 난이도 ★☆☆☆ - 그리디
lost
배열에 대해 for문을 돌리면서 불가능한 경우를 impossible
로 세어줬다. 그리고 여분 체육복을 빌려준 경우는 reserve
배열에서 제거해주는 식으로 반복문을 돌면 쉽게 풀린다.
정답은 모든 경우 n - impossible
가 된다.
💻 내 코드
def solution(n, lost, reserve):
impossible = 0
# 여분 체육복이 있어도 도난당할 수 있음
lost_set = list(set(lost) - set(reserve))
reserve_set = list(set(reserve) - set(lost))
for now in lost_set:
if now - 1 in reserve_set:
reserve_set.pop(reserve_set.index(now-1))
continue
if now + 1 in reserve_set:
reserve_set.pop(reserve_set.index(now+1))
continue
# 빌릴 수 없는 경우 count
impossible += 1
return n - impossible
💙 You need to log in to GitHub to write comments. 💙
If you can't see comments, please refresh page(F5).