AI Briefing

카카오, 2019 블라인드 공채 2차 코딩 테스트 문제 해설 공개

·2018.10.23 00:00

핵심 내용

엘리베이터 제어 시스템 구현 문제와 지원자들의 다양한 최적화 전략을 분석했다.

1 / 8

자세히 보기

카카오가 2019 블라인드 공채 2차 오프라인 코딩 테스트의 문제를 해설하며, 올해 시험의 핵심 평가 요소를 시스템 디자인 역량으로 명시했다. 작년과 달리 단순 구현을 넘어 다수의 엘리베이터를 효율적으로 제어하는 알고리즘 설계와 모듈화 능력이 중점적으로 평가되었다.

문제 구성 및 요구사항

시험은 1대부터 4대까지의 엘리베이터를 제어하는 시스템을 구현하는 과제로, 서버와의 REST API 통신을 통해 승객 요청(Call)을 처리하고 엘리베이터 상태(Status)를 관리해야 한다. 지원자는 어피치 맨션(5층, 6개 요청), 제이지 빌딩(25층, 200개 요청), 라이언 타워(25층, 500개 요청) 등 세 가지 빌딩 환경에 맞춰 최적의 제어 로직을 구현해야 한다.

평가 기준 및 알고리즘 성능

평가 기준은 모든 승객을 목적지에 수송하는 데 걸리는 마지막 타임스탬프이다. 일반적인 Collective Control(LOOK) 알고리즘을 적용할 경우, 제이지 빌딩에서는 약 972, 라이언 타워에서는 약 2000의 타임스탬프가 소요되는 것으로 나타났다. 반면, 사전 정보 활용(목적지 층 사전 인지), 대기 후 통합 탑승, 공간 활용 등 다양한 최적화 전략을 통해 더 높은 점수를 얻을 수 있었다.

통계 및 공개

언어별 사용 통계에서는 Python이 압도적으로 높은 비율을 차지했으며, Java와 Node.js가 뒤를 이었다. 빌딩별 최초 성공 시각은 14시 12분, 14시 40분, 14시 53분으로 집계되었다. 카카오는 해당 테스트에 사용된 엘리베이터 시뮬레이션 서버를 공개하여 누구나 실행해 볼 수 있도록 했다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.