본문 바로가기
Algorithm/프로그래머스

[프로그래머스] 전화번호 목록(level 2) Python 문제 풀이

by daewooki 2021. 6. 16.
반응형

문제 링크 : 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치고 매우 간단한 문제였던 것 같다.

 

반응형

댓글