Daily iOS
CS 기초·알고리즘

손상된 로그 파싱

앱이 남긴 네트워크 로그 파일이 있습니다. 각 줄은 사용자ID(4자리) 페이지명 시작시각(hh:mm:ss) 종료시각(hh:mm:ss) 형식인데, 일부 줄은 깨져 있습니다. 유효한 줄만 골라 로딩이 가장 느렸던 페이지 2개를 찾는 함수를 어떻게 설계하겠습니까? 깨진 줄은 어떻게 다루겠습니까?

면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
짧은 답 보기

줄을 토큰으로 나눠 필드 수·자릿수·시각 범위를 검증하고 실패하면 건너뛴다. 시각은 초 단위 정수로 바꿔 차이를 구하되 자정을 넘긴 경우를 보정한다. 상위 2개는 정렬 대신 두 변수(또는 크기 2 최소 힙)로 한 번 훑으며 유지한다.

받은 질문 공유