프로그래머스 - 연습 문제
Code (Python)
- for문과 remove 함수로 풀면 시간 초과 보는 문제
- for문은 O(n), remove 함수는 O(n)으로 도합 O(n^2)
- 문제에 시간 제한이 안 나와있는데 O(n^2)면 시간 초과가 나니까 줄여야 함
- 그래서 집합을 썼는데 푸는 내내 마음에 안 들었다
- 문제 낸 의도가 이게 아닐 텐데..
1 | def solution(participant, completion): |
Code (Python)
- collections 모듈의 counter 사용. 컨테이너에 동일한 자료가 몇 개인지 파악하는데 사용한다.
- Counter 객체는 이렇게 뺄 수가 있다고 함. 아무튼 결과적으로 값이 1인 것들만 남는다.
1 | import collections |
Code (Python)
- 내가 구현하고 싶었던 형태
- 그냥 for 문 밖에서 return하면 되는 거였구나 (멍청)
1 | def solution(participant, completion): |