쌍문동 척척박사
Spring / ReactJS / PS

2019 네이버 해커톤 코딩테스트

2019 네이버 해커톤 코딩테스트

자대 배치받고 1개월쯤 되니 공모전이나 해커톤을 나가보고 싶은 생각에 네이버 핵데이를 지원했다. 오잉 그런데 이번 핵데이부터는 코딩 테스트도 보네?

사지방에서 하다 보니 시간 제한에 조금 쫄렸지만, 그래도 다행히 익숙한 유형들이 나와서 1시간 반만에 풀 수 있었다.

네이버 측에서 문제를 공개하지 않는다니 어렴풋이 기억나는 대로 코드와 리뷰를 작성해보려 한다. 혹시 오타나 오류가 있으면 지적해주면 좋겠다.

Task 1

주사위의 현 상태 배열을 최소한의 이동을 통해 같은 면으로 통일하는 문제로, 6가지 면에 대해 각 면에서 면으로의 이동 값을 2차원 배열로 미리 선언한 뒤, 각 이동 값들을 모두 더해 총 이동값을 구하는 방식으로 풀었다. ACM-ICPC나 Google Code Jam에서 자주 나오는 지도 위의 방향 전환 문제에서 힌트를 얻었다.

코드 보기

Task 2

이진 트리와 set을 활용해 중복되는 않는 노드들로 이루어진 최대 height를 구하는 문제였는데, 해당 자료구조에 익숙한 사람이었다면 1, 3번에 비해 비교적 쉬웠을 것 같다.

코드 보기

Task 3

겨울과 여름의 경계선을 구하는 문제로, 전형적인 DP 문제였다. 왼쪽부터 순회하면서 구간별 최대 온도를 저장하고, 다시 오른쪽부터 순회하면서 구간별 최저 온도를 저장한 뒤, 최대 온도보다 최저 온도가 높은 지점을 반환하도록 했다.

코드 보기

comments powered by Disqus