728x90
SMALL
def solution(n, lost, reserve):
answer = 0
answer = n - len(lost)
lost.sort()
reserve.sort()
D = [i for i in lost if i in reserve]
for d in D:
lost.remove(d)
reserve.remove(d)
answer += len(D)
for i in lost:
if i-1 in reserve:
reserve.remove(i-1)
answer += 1
elif i+1 in reserve:
reserve.remove(i+1)
answer += 1
return answer
[솔루션]
1. 정렬
2. 특이 조건처리 ) 여벌 체육복을 가져온 학생이 체육복을 도난당했을 수 있습니다. 이때 이 학생은 체육복을 하나만 도난당했다고 가정하며, 남은 체육복이 하나이기에 다른 학생에게는 체육복을 빌려줄 수 없습니다.
-> D 라는 리스트로 교집합을 리스트 형태로 구해준뒤,
-> 먼저 제거를 하고 greedy를 위한 for문을 돌린다.
LIST
'개발공부' 카테고리의 다른 글
[캐글스터디] kernel density estimation (0) | 2021.04.07 |
---|---|
2. 깃허브(Github) 연동하기 (0) | 2021.02.21 |
1. Visual Studio Code 설치 (0) | 2021.02.21 |