Skip to content

[namuuCY] WEEK 01 solutions#2650

Merged
DaleSeo merged 6 commits into
DaleStudy:mainfrom
namuuCY:main
Jun 27, 2026
Merged

[namuuCY] WEEK 01 solutions#2650
DaleSeo merged 6 commits into
DaleStudy:mainfrom
namuuCY:main

Conversation

@namuuCY

@namuuCY namuuCY commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

답안 제출 문제

작성자 체크 리스트

  • Projects의 오른쪽 버튼(▼)을 눌러 확장한 뒤, Week를 현재 주차로 설정해주세요.
  • 문제를 모두 푸시면 프로젝트에서 StatusIn Review로 설정해주세요.
  • 코드 검토자 1분 이상으로부터 승인을 받으셨다면 PR을 병합해주세요.

검토자 체크 리스트

Important

본인 답안 제출 뿐만 아니라 다른 분 PR 하나 이상을 반드시 검토를 해주셔야 합니다!

  • 바로 이전에 올라온 PR에 본인을 코드 리뷰어로 추가해주세요.
  • 본인이 검토해야하는 PR의 답안 코드에 피드백을 주세요.
  • 토요일 전까지 PR을 병합할 수 있도록 승인해주세요.

@dalestudy

dalestudy Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

📊 namuuCY 님의 학습 현황

이번 주 제출 문제

문제 난이도 유형 분석
contains-duplicate Easy ✅ 의도한 유형
house-robber Medium ✅ 의도한 유형
longest-consecutive-sequence Medium ⚠️ 유형 불일치
top-k-frequent-elements Medium ⚠️ 유형 불일치
two-sum Easy ✅ 의도한 유형

누적 학습 요약

  • 풀이한 문제: 0 / 75개
  • 이번 주 유형 일치율: 60% (5문제 중 3문제 일치)

문제 풀이 현황

카테고리 진행도 완료
Array □□□□□□□ 0 / 10 ← 아직 시작 안 함
Binary □□□□□□□ 0 / 5 ← 아직 시작 안 함
Dynamic Programming □□□□□□□ 0 / 11 ← 아직 시작 안 함
Graph □□□□□□□ 0 / 8 ← 아직 시작 안 함
Interval □□□□□□□ 0 / 5 ← 아직 시작 안 함
Linked List □□□□□□□ 0 / 6 ← 아직 시작 안 함
Matrix □□□□□□□ 0 / 4 ← 아직 시작 안 함
String □□□□□□□ 0 / 10 ← 아직 시작 안 함
Tree □□□□□□□ 0 / 14 ← 아직 시작 안 함
Heap □□□□□□□ 0 / 3 ← 아직 시작 안 함

🤖 이 댓글은 GitHub App을 통해 자동으로 작성되었습니다.

🔢 API 사용량 (gpt-5-nano)
요청 입력 토큰 출력 토큰 합계 비용
1 1,113 35 1,148 $0.000070
2 1,572 71 1,643 $0.000107
3 1,635 71 1,706 $0.000110
4 2,014 139 2,153 $0.000156
5 2,477 148 2,625 $0.000183
6 2,928 185 3,113 $0.000220
합계 11,739 649 12,388 $0.000847

@yuseok89 yuseok89 self-requested a review June 23, 2026 14:36

@yuseok89 yuseok89 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!

여전히 위와 같은 코멘트가 보이는데요.
제 풀이에서 여러가지 해봤을 때,
앞 줄에 이렇게 주석으로 남기면 봇이 인식하는 것 같았습니다 !

Comment thread contains-duplicate/namuuCY.java Outdated
@@ -0,0 +1,34 @@
/**

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
/**
// TC: O(N)
// SC: O(N)
/**

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

조언 감사드립니다!
방금 수정했고, 오늘 2문제 추가 풀이 후 commit 올리겠습니다.

Comment thread house-robber/namuuCY.java Outdated
@@ -0,0 +1,76 @@
class Solution {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
class Solution {
// TC: O(N)
// SC: O(1)
class Solution {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🏷️ 알고리즘 패턴 분석

  • 패턴: Hash Map / Hash Set, Greedy
  • 설명: 집합(Set)을 이용해 이미 본 숫자를 빠르게 확인하는 방식으로 중복 여부를 판단한다. 각 원소를 순차적으로 확인하며, 이미 존재하면 즉시 종료하는 탐색 패턴이다.

📊 시간/공간 복잡도 분석

복잡도
Time O(n)
Space O(n)

피드백: 한 번의 순회로 각 숫자를 HashSet에 저장하며 중복 여부를 판단합니다.

개선 제안: 현재 구현이 적절해 보입니다.

💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!

Comment thread house-robber/namuuCY.java

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🏷️ 알고리즘 패턴 분석

  • 패턴: Dynamic Programming, Greedy
  • 설명: 코드는 이웃 서브문제의 최댓값을 활용하는 DP 아이디어를 단순 순회로 구현한 예로, 한 칸 건너뜀과 누적 합의 최댓값을 유지하는 형태가 DP 패턴에 해당합니다. 또한 제약에 따라 선택과 비선택의 최대를 격리해 계산하는 모습은 그리디적 요소와도 연결됩니다.

📊 시간/공간 복잡도 분석

복잡도
Time O(n)
Space O(1)

피드백: 두 상태를 유지하며 이전 값을 이용해 현재 값을 갱신하는 방식으로 공간을 상수로 관리합니다.

개선 제안: 현재 구현이 적절해 보입니다.

💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🏷️ 알고리즘 패턴 분석

  • 패턴: Sort, Two Pointers, Dynamic Programming
  • 설명: 배열 정렬 후 연속 증가 구간을 탐색하는 흐름으로, 인접 원소 비교로 연속 수를 세는 방식이다. 직접적인 DP/슬라이딩 윈도우보다는 정렬 기반의 탐색 패턴에 가깝다.

📊 시간/공간 복잡도 분석

복잡도
Time O(n log n)
Space O(1)

피드백: 정렬이 필요하므로 시간복잡도는 n log n이며, 추가 배열 없이 상수 공간으로 구현합니다.

개선 제안: 현재 구현이 적절해 보입니다.

💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🏷️ 알고리즘 패턴 분석

  • 패턴: Hash Map / Hash Set, Sorting
  • 설명: 숫자 빈도수 저장에 HashMap을 사용하고, 빈도수를 기준으로 내림차순 정렬하여 상위 k개를 추출하는 흐름으로 구성되어 있어 Hash Map과 Sorting 패턴이 모두 해당됩니다.

📊 시간/공간 복잡도 분석

복잡도
Time O(n log n)
Space O(n)

피드백: 빈도 수를 키로 하는 맵과 그 키들로 구성된 리스트를 정렬해 상위 k개를 선택합니다.

개선 제안: 현재 구현이 적절해 보입니다.

💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!

Comment thread two-sum/namuuCY.java

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🏷️ 알고리즘 패턴 분석

  • 패턴: Hash Map / Hash Set, Two Pointers
  • 설명: 해당 코드는 한 번 순회하며 해시맵으로 이미 본 수의 인덱스를 기록하고, 현재 수와 타깃의 차가 이미 존재하는지 확인하는 방식으로 해결합니다. 이때 해시 맵을 이용한 조회-저장 패턴이 핵심이며, 두 수의 합을 찾는 문제의 대표적인 키워드입니다.

📊 시간/공간 복잡도 분석

복잡도
Time O(n)
Space O(n)

피드백: 해시맵으로 이미 본 값의 인덱스를 저장하고, 필요한 값을 만날 때 쌍을 즉시 반환합니다.

개선 제안: 현재 구현이 적절해 보입니다.

💡 풀이에 시간/공간 복잡도를 주석으로 남겨보세요!

@namuuCY namuuCY moved this from Solving to In Review in 리트코드 스터디 8기 Jun 27, 2026
@namuuCY namuuCY requested a review from yuseok89 June 27, 2026 13:12

@yuseok89 yuseok89 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1주차 고생 많으셨습니다 !
생각의 흐름을 주석에 남겨 놓는 부분은 매우 좋은 습관인 것 같습니다 👍

Comment on lines +18 to +22
List<Integer> numbers = new ArrayList<>(numberCount.keySet());

numbers.sort((first, second) ->
Integer.compare(numberCount.get(second), numberCount.get(first))
);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

정렬 대신 빈도수를 배열 인덱스로 활용하는 버킷 정렬을 쓰면 시간 복잡도를 O(NlogN)에서 O(N)으로 줄일 수 있습니다.
빈도수의 최댓값은 배열 길이 N 을 넘지 않으므로, List[] buckets = new List[nums.length + 1] (혹은, 빈도수의 최대값 만큼)을 선언해 빈도별로 숫자를 담은 뒤, 역순으로 K 개를 꺼내면 정렬 없이 빠르게 처리할 수 있어 제안해 드립니다.


class Solution {
public int longestConsecutive(int[] nums) {
Arrays.sort(nums);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

HashSet 을 활용하면 정렬 없이 O(N) 시간 복잡도로 풀이할 수 있습니다.

@DaleSeo DaleSeo merged commit 1062adc into DaleStudy:main Jun 27, 2026
1 check passed
@github-project-automation github-project-automation Bot moved this from In Review to Completed in 리트코드 스터디 8기 Jun 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Completed

Development

Successfully merging this pull request may close these issues.

3 participants