프로그래머스

level2_순위검색(2021 KAKAO BLIND RECRUITMENT)

문제

https://programmers.co.kr/learn/courses/30/lessons/72412

 

코딩테스트 연습 - 순위 검색

["java backend junior pizza 150","python frontend senior chicken 210","python frontend senior chicken 150","cpp backend senior pizza 260","java backend junior chicken 80","python backend senior chicken 50"] ["java and backend and junior and pizza 100","pyt

programmers.co.kr


접근방법

1) 접근 사고

처음에 query와 info를 파싱하는 작업을 거쳐서 비교해주면 되는 간단한 문제라고 생각했습니다. 그러나 점수를 비교하는 부분에서 최악의 경우 50000 * 100000 으로 5억번의 연산이 일어나고 대략 5초 정도의 시간이 걸리므로 시간초과가 발생하게 됩니다. 그래서 데이터를 파싱하는 작업을 진행한 뒤 이분탐색으로 조회를 해결해야 하는 문제였습니다.

 

2) 시간 복잡도

O(longN)

 

3) 실수

1.python을 pyothn으로 잘못입력해서 삽질한 부분

2.시간복잡도 계산 안 하고 무사고 구현한 것

 

4) PS

이게 왜 level2?


정답 코드