코딩문제는 스토리가 좋은거같다..처음 읽었을 때는 감이 오질 않았는데, 스토리상으로 생각해보니
잃어버린 친구들이 도움을 요청하는 방식으로 생각을 해보았다.
도둑맞은 친구가 여유있는 친구들 중 자기 사이즈에 맞는 친구에게 부탁해보기로..
코드는 아래와 같다.
def solution(n, lost, reserve):
answer = n - len(lost)
for i in range(0, len(lost)):
for j in range(0, len(reserve)):
if lost[i] == (reserve[j]-1) or lost[i] == (reserve[j]+1):
reserve.pop(j)
answer += 1
break
return answer
이와 같이 했으나 역시나 오답.
여유분이 있는친구가 잃어버릴 수 있다는 것을 빼먹었다.
추가 완료. 정답.
def solution(n, lost, reserve):
answer = n - len(lost)
lost_tmp = []
reserve_tmp = []
# 도둑맞았지만 여유있는 친구들
for i in range(0, len(lost)):
for j in range(0, len(reserve)):
if lost[i] == reserve[j]:
lost_tmp.append(lost[i]);
reserve_tmp.append(reserve[j]);
answer += 1
break;
for i in lost_tmp:
lost.remove(i)
for i in reserve_tmp:
reserve.remove(i)
# 빌려오기
for i in range(0, len(lost)):
for j in range(0, len(reserve)):
if lost[i] == (reserve[j]-1) or lost[i] == (reserve[j]+1):
reserve.pop(j)
answer += 1
break
return answer
다른사람들 풀이보면서 알게된 python 함수 및 문법