[seueooo] WEEK 04 Solutions - #2771
Conversation
📊 seueooo 님의 학습 현황이번 주 제출 문제
누적 학습 요약
문제 풀이 현황
🤖 이 댓글은 GitHub App을 통해 자동으로 작성되었습니다. 🔢 API 사용량 (gpt-5-nano)
|
There was a problem hiding this comment.
요건 돌려보면 runtime이 5% 정도 나오는데 최적화 시도해보시면 좋을 거 같습니다.
There was a problem hiding this comment.
재귀로 풀어주셨네요. 재귀 아닌 방식으로 풀어보셔도 재밌으실 거 같습니다.
There was a problem hiding this comment.
더 최적화 한다면 어떤 부분이 있을지 한 번 고민해보셔도 좋을 거 같습니다.
parkhojeong
left a comment
There was a problem hiding this comment.
풀이와 관계없는 커밋 로그 정리 부탁드립니다.
There was a problem hiding this comment.
🏷️ 알고리즘 패턴 분석
- 패턴: BFS
- 설명: 이 코드는 각 합계를 노드로 보고 동전 조합의 최소 동전 개수를 찾기 위해 너비 우선 탐색(BFS)을 사용합니다. 큐에 상태를 순차적으로 확장하며 목표 합계에 도달하면 최단 경로의 동전 개수를 반환합니다.
📊 시간/공간 복잡도 분석
| 유저 분석 | 실제 분석 | 결과 | |
|---|---|---|---|
| Time | O(amount * n) | O(sum_values * n) | ❌ |
| Space | O(amount) | O(amount) | ✅ |
피드백: 수행 시 각 합을 한 번만 처리하도록 하여 최단 경로를 찾는다. 방문 중복 제거를 위해 Set를 사용한다.
개선 제안: 현재 구현이 적절해 보입니다.
There was a problem hiding this comment.
🏷️ 알고리즘 패턴 분석
- 패턴: Binary Search
- 설명: 배열이 회전된 정렬 배열에서 이분 탐색으로 최소값의 인덱스를 찾는 전형적인 패턴으로, 중간값과 경계 비교를 통해 탐색 범위를 절반으로 줄인다.
📊 시간/공간 복잡도 분석
| 복잡도 | |
|---|---|
| Time | O(log n) |
| Space | O(1) |
피드백: 정렬된 부분과 회전된 부분의 경계로 좁혀가며 최소값 위치를 찾는다.
개선 제안: 현재 구현이 적절해 보입니다.
💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!
There was a problem hiding this comment.
🏷️ 알고리즘 패턴 분석
- 패턴: Depth-First Search, Recursive Programming
- 설명: 재귀적으로 트리를 탐색하며 왼쪽/오른쪽 자식을 각각 깊이를 구한 뒤 최대값에 1을 더해 트리의 최대 깊이를 구하는 전형적인 DFS 형태의 재귀 풀이.
📊 시간/공간 복잡도 분석
| 복잡도 | |
|---|---|
| Time | O(n) |
| Space | O(n) |
피드백: 트리의 모든 노드를 한 번씩 방문하고 각 재귀 호출이 깊이만큼 스택을 사용한다.
개선 제안: 현재 구현이 적절해 보입니다.
💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!
There was a problem hiding this comment.
🏷️ 알고리즘 패턴 분석
- 패턴: Divide and Conquer, Recursive (implicit)
- 설명: 두 정렬된 연결 리스트를 재귀적으로 합치는 방식으로 문제를 분할하고, 각 부분 문제의 해를 결합하여 전체 해를 구한다. 재귀 호출 스택으로 공간이 사용되며, 기본 사례는 비어있는 리스트 처리이다.
📊 시간/공간 복잡도 분석
| 유저 분석 | 실제 분석 | 결과 | |
|---|---|---|---|
| Time | O(n + m) | O(n + m) | ✅ |
| Space | O(n + m) | O(n + m) | ✅ |
피드백: 작은 노드를 머리로 두고 남은 부분을 재귀적으로 연결한다.
개선 제안: 현재 구현이 적절해 보입니다.
There was a problem hiding this comment.
🏷️ 알고리즘 패턴 분석
- 패턴: Backtracking, Depth-First Search
- 설명: 글자 하나씩 탐색하면서 방향으로 가능한 경로를 시도하고 실패 시 되돌려 다른 경로를 시도하는 백트래킹 방식과, 재귀로 깊이 우선 탐색을 같이 사용합니다.
📊 시간/공간 복잡도 분석
| 복잡도 | |
|---|---|
| Time | O(rows * cols * 4^L) |
| Space | O(rows * cols) |
피드백: 백트래킹으로 가능한 경로를 탐색하고, 방문 여부를 원상태로 돌려 다른 경로를 탐색한다.
개선 제안: 현재 구현이 적절해 보입니다.
💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!
답안 제출 문제
뒤늦게 4주차 올립니다..!
작성자 체크 리스트
In Review로 설정해주세요.검토자 체크 리스트
Important
본인 답안 제출 뿐만 아니라 다른 분 PR 하나 이상을 반드시 검토를 해주셔야 합니다!