체육복을 도난당한 학생의 번호와 여벌이 있는 학생의 번호가 같을 경우를 고려해야하는 문제.
def solution(n, lost, reserve):
# 체육복을 도난당한 학생이 여벌이 있을경우를 고려하여 둘 다 제거
real_lost = list(set(lost) - set(reserve))
real_reserve = list(set(reserve) -set(lost))
for i in range(len(real_reserve)):
if real_reserve[i] -1 in real_lost:
real_lost.remove(real_reserve[i] -1)
elif real_reserve[i] + 1 in real_lost:
real_lost.remove(real_reserve[i] + 1)
answer = n - len(real_lost)
return answer
programmers.co.kr/learn/courses/30/lessons/42862
코딩테스트 연습 - 체육복
점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번
programmers.co.kr
728x90
반응형
'Algorithm > 프로그래머스' 카테고리의 다른 글
기능개발 (0) | 2022.03.22 |
---|---|
스택/큐 - 프린터 (0) | 2022.03.21 |
정렬 - K번째 수 (0) | 2022.03.10 |
프로그래머스 - 모의고사 (0) | 2022.03.05 |