Algorithm/프로그래머스
[프로그래머스] 전화번호 목록(level 2) Python 문제 풀이
daewooki
2021. 6. 16. 19:25
반응형
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42577
문제 해결 방법
1. 정렬
2. i번째와 j번째(i+1~전화번호부의 마지막 원소)와 비교
3. j번째 원소가 i번째 원소로 시작하면 return False
4. 2~3번 과정 반복
5. 시작하는 것이 없어 모든 루프를 돌았으면 return True
다음과 같이 제출 했더니 효율성 테스트에서 시간 초과가 발생했다..;;
이중 for문을 이용해서 모든 경우를 보는 것은 비효율적이라 판단하는 것 같다.
다른 사람의 풀이를 보니 zip함수를 사용해서 인접한 애들만 조사하는 방식을 사용했다.
처음엔 이게 되나? 싶지만.. 잘 생각해보면 된다.
sort함수로 정렬을 했기 때문에 된다. (나도 정렬하긴 했지만;;)
그래도 level 2치고 매우 간단한 문제였던 것 같다.
반응형