프론트엔드 신입 취업을 준비하며 푼 문제들. JavaScript 로 풉니다 — 면접에서 말할 언어와 같아야 한다고 생각해서입니다.
문제마다 폴더를 하나 두고 solution.js 와 README.md 를 같이 둡니다.
풀이보다 왜 그렇게 접근했는지와 시간복잡도를 남기는 걸 목적으로 합니다.
없음. 다음 문제 대기 중.
문제를 받으면 이 자리에 링크가 붙는다. 문제와 제한사항은 각 폴더의 README.md 에,
스켈레톤과 테스트 러너는 solution.js 에 있다.
| 날짜 | 플랫폼 | Lv | 문제 | 핵심 | 시간 | 공간 |
|---|---|---|---|---|---|---|
| 2026-09-07 | 프로그래머스 | 1 | 완주하지 못한 선수 | Map 으로 이름별 참가 수를 세고 완주로 차감 |
O(n) | O(n) |
| 2026-09-08 | 프로그래머스 | 2 | 가장 큰 수 | 이어 붙인 결과를 비교하는 sort 비교 함수 |
O(n log n) | O(n) |
| 2026-09-09 | 프로그래머스 | 2 | 기능개발 | 소요일을 구한 뒤 묶음의 배포일 기준으로 세기 | O(n) | O(n) |
| 2026-09-10 | 프로그래머스 | 2 | 타겟 넘버 | 재귀 DFS 로 모든 부호 조합을 세기 | O(2ⁿ) | O(n) |
programmers/
└── lv1/ · lv2/
└── <번호>-<문제명>/
├── solution.js 풀이
└── README.md 문제 요약 · 접근 · 복잡도 · 막힌 지점
README.md 에 네 가지를 적습니다.
- 접근 — 처음 떠올린 방법과, 그게 왜 부족했는지
- 선택 — 최종 자료구조·알고리즘과 고른 이유
- 복잡도 — 시간·공간, 그리고 제한 조건에서 왜 통과하는지
- 막힌 지점 — 틀렸던 부분. 다시 보면 같은 데서 또 막힌다