본문 바로가기
알고리즘/프로그래머스 level 1,2

[파이썬🐍] 프로그래머스 : 체육복

by 코딩개미뚠뚠 2021. 4. 19.
반응형
def solution(n, lost, reserve): 
    reser_d = set(reserve)-set(lost) 
    lost_d = set(lost)-set(reserve) 
    for i in reser_d: 
        if i-1 in lost_d: 
            lost_d.remove(i-1) 
        elif i+1 in lost_d: 
            lost_d.remove(i+1) 
    return n-len(lost_d)

앞에서부터 차례대로 탐색하면서 앞친구가 빌려줄 수 있다면 빌려주고,

없다면 뒷친구가 빌려줄 수 있다면 빌려준다.

이렇게 해야 수업을 들을 수 있는 학생이 최대가 된다.

 

처음에,

  • 여벌 체육복을 가져온 학생이 체육복을 도난당했을 수 있습니다. 이때 이 학생은 체육복을 하나만 도난당했다고 가정하며, 남은 체육복이 하나이기에 다른 학생에게는 체육복을 빌려줄 수 없습니다.

이 제한사항을 안보고 풀다가 테스트케이스에 하나만 성공을 했다.

 

앞으로모든 제한사항 꼼꼼하게 읽기!!!

반응형

댓글