!프로그래머스 체육복

DARTZ·2022년 6월 13일
0

알고리즘

목록 보기
85/135
def solution(n, lost, reserve):
    _reserve = [r for r in reserve if r not in lost] # reserve list를 돌면서 운동복을 잃어버리지 않은 학생들만 다시 저장
    _lost = [l for l in lost if l not in reserve] # lost list를 돌면서 여벌의 운동복이 없고 운동복을 잃어버린 학생 리스트 저장
    for r in _reserve: # 운동복을 잃어버리지 않은 학생들을 돌면서
        f = r - 1 # 앞
        b = r + 1 # 뒤
        if f in _lost: # 만약에 앞의 학생이 _lost에 있다면
            _lost.remove(f) # 제거
        elif b in _lost: # 뒤에 있다면
            _lost.remove(b) # 제거
    return n - len(_lost) # 전체에서 수업을 받을 수 있는 학생만 계산
profile
사람들이 비용을 지불하고 사용할 만큼 가치를 주는 서비스를 만들고 싶습니다.

0개의 댓글