-
위클리 챌린지 7주차 입실 퇴실코딩 테스트/Level 2 2021. 9. 14. 16:32반응형
https://programmers.co.kr/learn/courses/30/lessons/86048
나보다 먼저 왔다가 나중에 간 사람들을 찾는 문제라고 생각하면 쉽다.
set을 이용해 풀면 크게 어렵진 않다. 시간제한의 함정이 있지만...from itertools import combinations def solution(enter, leave): answer = [0 for _ in range(len(enter))] groups = set() for index, value in enumerate(enter): group = set(enter[:index + 1]) - set(leave[:leave.index(value)]) if len(group) > 1: groups.update(combinations(sorted(group), 2)) for a, b in groups: answer[a - 1] += 1 answer[b - 1] += 1 return answer
테스트 1 〉 통과 (0.02ms, 10.2MB) 테스트 2 〉 통과 (0.04ms, 10.2MB) 테스트 3 〉 통과 (0.03ms, 10.2MB) 테스트 4 〉 통과 (0.08ms, 10.2MB) 테스트 5 〉 통과 (0.06ms, 10.2MB) 테스트 6 〉 통과 (0.92ms, 10.2MB) 테스트 7 〉 통과 (0.25ms, 10.2MB) 테스트 8 〉 통과 (0.78ms, 10.3MB) 테스트 9 〉 통과 (2.82ms, 10.4MB) 테스트 10 〉 통과 (62.66ms, 13.7MB) 테스트 11 〉 통과 (395.43ms, 16.8MB) 테스트 12 〉 통과 (1158.34ms, 22.5MB) 테스트 13 〉 통과 (0.01ms, 10.2MB) 테스트 14 〉 통과 (0.02ms, 10.2MB) 테스트 15 〉 통과 (0.02ms, 10.2MB) 테스트 16 〉 통과 (0.01ms, 10.2MB) 테스트 17 〉 통과 (0.02ms, 10.2MB) 테스트 18 〉 통과 (0.06ms, 10.2MB) 테스트 19 〉 통과 (0.05ms, 10.2MB) 테스트 20 〉 통과 (0.04ms, 10.2MB) 테스트 21 〉 통과 (5.53ms, 10.4MB) 테스트 22 〉 통과 (2.18ms, 10.3MB) 테스트 23 〉 통과 (0.52ms, 10.3MB) 테스트 24 〉 통과 (426.47ms, 20.8MB) 테스트 25 〉 통과 (135.70ms, 15.6MB) 테스트 26 〉 통과 (4810.64ms, 53.5MB) 테스트 27 〉 통과 (1928.26ms, 35.8MB) 테스트 28 〉 통과 (0.02ms, 10.2MB) 테스트 29 〉 통과 (0.04ms, 10.2MB) 테스트 30 〉 통과 (1.42ms, 10.3MB) 테스트 31 〉 통과 (11.79ms, 11.2MB) 테스트 32 〉 통과 (75.42ms, 15MB) 테스트 33 〉 통과 (599.32ms, 31.7MB) 테스트 34 〉 통과 (690.87ms, 31.8MB) 테스트 35 〉 통과 (0.05ms, 10.2MB) 테스트 36 〉 통과 (0.29ms, 10.2MB) 테스트 37 〉 통과 (0.01ms, 10.2MB)
풀고 나서
다른 분의 코드를 보니...
조합을 사용하지 않고도 깔끔하게 푸셨...
좋은 코드라 추천 남겼다.내 코드는 왜 이 모양인가...반응형