임원면접에서 CTO분이 알고리즘 문제를 내셨다. 문제는 쉬운 문제였습니다.
반복되는 짝수의 경우
*
를 홀수의 경우-
를 추가하는 문제입니다.
마음이 급했던 나머지 문제를 잘못 이해했고 반복되는 짝수, 홀수 다음에 추가하는지 알고 문제를 풀어나갔습니다. 하지만 출력부분이 이상하다고 느낀 저는 문제를 다시한번 읽어보았고 제가 잘못이해했습니다.
다시 풀려고하니 긴장되고 머리회전이 안되었고 결국에 시간이 경과되어서 풀지 못했습니다.
function insertSpecialChars(input: string): string {
let result = "";
for (let i = 0; i < input.length; i++) {
const currentChar = input[i];
const prevChar = input[i - 1] || "";
const isEven = parseInt(currentChar) % 2 === 0;
const isPrevEven = parseInt(prevChar) % 2 === 0;
if (i > 0 && isEven === isPrevEven) {
result += isEven ? "*" : "-";
}
result += currentChar;
}
return result;
}
이번에 교훈으로 긴장되어도 천천히 문제를 인식하고 어떤 문제인지 파악하는게 가장 중요하다고 생각드는 하루였습니다.