상세 컨텐츠

본문 제목

Softeer Level3: [HSAT 7회 정기 코딩 인증평가 기출] 자동차 테스트 (구현 / with Python)

Python알고리즘

by 앱등개발자IOS 2023. 10. 2. 14:49

본문

문제를 풀수록 HSAT 문제들이 알차게 구성되어있다는 것을 느꼈다..

5만개의 숫자가 들어오고, 쿼리는 20만개까지 들어올 수 있으므로,  편하게 로직을 짜면 바로 시간초과가 날 것 같았다.

 

쿼리에서 어떤 숫자가 주어지면, 해당 숫자가 data 배열에서 몇 번째에 있는지 바로바로 알아낼 수 있어야한다.

 

data.index(찾아야 할 수) 와 같은 연산을 매 번 반복하면 시간초과가 나게 된다.

따라서 dictionary 형태로 구성하여 key는 우리가 찾는 수, value는 (그 숫자 앞에 있는 숫자의 갯수, 그 숫자 뒤에 있는 숫자 갯수) 로 구성하여  쿼리에서 곱셈만 해서 print하면 되도록  HASH를 미리 구성해두는 것이 핵심이다.

관련글 더보기