카카오, 2024 겨울 인턴십 코딩 테스트 5문제 해설 공개
·2023.12.27 00:00
핵심 내용
카카오가 겨울 인턴십 코딩 테스트 5문제의 알고리즘 풀이와 시간복잡도 분석을 공개했다.
1 / 5
자세히 보기
카카오가 2024 채용 연계형 겨울 인턴십 코딩 테스트의 5개 문제에 대한 상세 해설을 공개했다. 이번 테스트는 자료구조 활용부터 동적 계획법까지 다양한 알고리즘 역량을 평가하도록 구성되었으며, 각 문제의 최적 풀이와 시간복잡도 분석이 포함되었다.
문제별 핵심 풀이 전략
- 가장 많이 받은 선물: 2차원 배열을 이용해 선물 주고받은 관계를 카운팅하고, 이를 기반으로 순위를 매기는 자료구조 활용 문제다.
- 도넛과 막대 그래프: 그래프의 정점과 간선 수, 차선(나가는/들어오는 간선) 등을 분석해 생성된 정점과 그래프의 형태(도넛, 막대, 8자)를 구분한다. 이 방법은 O(V+E)의 시간복잡도로 해결 가능하다.
- 주사위 고르기: 주사위 조합을 완전탐색하되, A와 B의 주사위 결과를 분리해 시뮬레이션한 뒤 정렬 및 투 포인터 기법을 적용해 시간복잡도를 O(m log m) 수준으로 최적화한다.
- 카드게임: 동전 소모를 최소화하기 위해 손에 있는 카드(a)와 뽑은 카드(b)를 구분하고, 동전 0개(두 장 모두 a), 1개(각각 한 장), 2개(두 장 모두 b) 순으로 우선순위를 두어 진행하는 그리디 알고리즘을 적용한다.
- 산 모양 타일링: 정삼각형 격자에서 마름모 타일의 덮는 경우를 4가지로 분류하고, 직전 상태에 따라 경우의 수가 달라지는 조건을 고려해 다이나믹 프로그래밍(DP) 점화식을 세운다. 전체 시간복잡도는 O(n)이다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.