4월 28일에 백준이 문을 닫았고, 7월에 데이원컴퍼니가 인수해서 부활시킨다고 했고, 비슷한 시기에 개인정보 유출이 터졌다. 코테 준비하는 사람 입장에서 정신없는 넉 달이었다.
좌표 범위가 10^9인 문제를 처음 만나면 대부분 멈칫한다. 배열 크기를 10억으로 잡을 수는 없고, 해시맵을 쓰자니 구간 쿼리가 안 돌아간다.
문제를 읽다가 제약 조건에 "N ≤ 20"이 적혀 있으면, 그 순간부터 비트마스크 DP를 떠올려야 한다. 이건 감이 아니라 공식에 가깝다.
구글이 지난 7월부터 신입·중급 개발자 코딩 면접에서 Gemini를 쓰게 하고 있다. 메타는 아예 온사이트 코딩 라운드 하나를 AI 보조 면접으로 교체했다.
코딩테스트 문제를 읽는데 "가장 큰 값 중 최소", "최소 거리의 최대" 같은 표현이 나온다. 뭔가 최적화 문제 같은데 그리디도 아니고 DP도 아닌 것 같고.
카카오가 올해 신입 공채 코딩테스트 문제 해설을 공개했는데, 출제 유형 목록을 보고 좀 놀랐다. 1차는 문자열, 트리, 그래프, 구현.
N ≤ 20이면 비트마스크로 전수탐색이 가능하다는 건 많이들 안다. 2^20은 약 100만이니까.
가중치 있는 최단 경로 문제를 보면 반사적으로 다익스트라부터 꺼내는 습관, 나도 그랬다. 근데 간선 비용이 0 아니면 1뿐인 그래프라면 힙 없이 deque 하나로 O(V+E)에 끝난다.
코딩테스트 스터디에서 LIS(최장 증가 부분수열)를 다루면 항상 같은 순서로 진행된다. O(n²) DP부터 시작해서, "이건 느리니까" 하면서 O(n log n) 풀이를 소개하고, bisect_left 쓰는 코드를 보여주고, 끝.
코딩테스트에서 "두 노드가 같은 그룹인가?"라는 질문이 나오면, 많은 사람이 BFS나 DFS를 꺼낸다.
코딩테스트 단골 유형 중에 이런 게 있다. "A를 먼저 끝내야 B를 시작할 수 있고, B를 끝내야 C를 시작할 수 있다.
Meta가 코딩 면접에서 AI를 쓰라고 했다. Cursor든 Copilot이든 Claude든, 뭘 쓰든 상관없다고.
코테 문제의 제한 조건에 "1 ≤ N ≤ 20"이 보이면 "완전탐색이네" 하고 넘기는 사람이 많다. 반은 맞고 반은 틀리다.
올해 상반기, 면접장에서 묘한 말이 들리기 시작했다. "코딩 과제 중 AI 도구 사용해도 괜찮습니다.
코테에서 "각 원소에 대해 오른쪽에서 처음으로 더 큰 값을 찾아라" 류의 문제를 만나면, 대부분 이중 for문부터 짠다. 돌아간다.
코테 문제를 읽다가 "최솟값의 최댓값을 구하시오"를 만나면 반사적으로 DFS를 꺼내는 사람이 많다. 모든 경우를 다 해보면 되니까.