Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Chaedie] Week 6 #897

Merged
merged 9 commits into from
Jan 19, 2025
Merged

[Chaedie] Week 6 #897

merged 9 commits into from
Jan 19, 2025

Conversation

Chaedie
Copy link
Contributor

@Chaedie Chaedie commented Jan 14, 2025

답안 제출 문제

체크 리스트

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

Sorry, something went wrong.

@Chaedie Chaedie requested a review from a team as a code owner January 14, 2025 00:19
@github-actions github-actions bot added the py label Jan 14, 2025
@Chaedie Chaedie requested a review from jinah92 January 14, 2025 06:36
Comment on lines 6 to 7
Time: O(n)
Space: O(n)
Copy link
Contributor

Choose a reason for hiding this comment

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

이렇게 method가 두 개 이상인 경우에는 각 메소드마다 복잡도 분석을 남겨주시는게 더 좋을 것 같습니다 :)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

조언해주신대로 수정했습니다..!



"""
풀이를 보고 적었으며, 완벽히 이해 되지는 않습니다.
Copy link
Contributor

Choose a reason for hiding this comment

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

어떤 부분이 이해가 잘 안되셨나요? 제가 도울 수 있다면 도와드리겠습니다
+이런 부분들을 Discussion에 올려주시면 좋을 것 같아요 ㅎㅎ

@@ -0,0 +1,44 @@
"""
Solution: 1) DFS Brute Force -> TLE
Time: O(2^n * nlogn)
Copy link
Contributor

Choose a reason for hiding this comment

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

LIS 알고리즘이 문제는 간단한데, 최적화 알고리즘을 이해하기 많이 어려웠던 기억이 납니다 ㅎㅎ
이건 제가 2기 참여할 당시에 wikipedia에서 LIS 알고리즘을 참고하며 이해하려고 정리한 풀이인데, 도움이 되었으면 좋겠습니다

Copy link
Contributor Author

Choose a reason for hiding this comment

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

wiki 까지 찾아보며 정석대로(?) 공부하는 방법이 있다는걸 처음 알게되었네요. 감사합니다. 이번주차 PR 은 우선 merge 한 뒤에 개인적으로 다시 공부해보겠습니다.

다음주차부터는 모르는 부분에 대해 DIscussion 통해 질문해보도록 하겠습니다. 감사합니다 👍

Solution:
1) 좌우 상하의 경계를 좁혀가며 순회한다.
2) 탈출 조건으로 result 의 사이즈가 matrix 의 원소 갯수가 같아지는지 확인한다.
(탈출 조건을 좌우 상하 경계가 넘어가는 시험을 기준으로 삼은 솔루션을 봤지만, 정확히 이해는 되지 않아 사이즈 비교로 진행했습니다.)
Copy link
Contributor

Choose a reason for hiding this comment

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

지금 풀이에서도 상하좌우 경계를 관리하고 계신대요? 어떤 부분이 이해가 잘 안 되셨을까요?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

if len(result) == len(matrix[0]) * len(matrix):
                break

저의 경우 이렇게 break 로 탈출하는 지점을 4개 반복으로 만들었는데요, 달레님 블로그글만 보더라도

# 상단 인덱스가 하단 인덱스보다 커지면 순회 중단
if top > bottom:
    break

  # 우측 인덱스가 좌측 인덱스보다 작아지면 순회 중단
  if left > right:
      break

이렇게 인덱스를 통해 탈출조건을 지정했더라구요, 이 부분이 어렴풋이 이해는 되지만, 명확하게 이해가 되지 않다보니 제가 짠다면 저는 또 다시 4번의 탈출문을 넣을것 같습니다.

Copy link
Contributor

@obzva obzva left a comment

Choose a reason for hiding this comment

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

안녕하세요 이번 한 주도 고생하셨고, 잘 모르는 부분도 찾아보려고 노력하신 흔적이 보여서 좋았습니다
혼자서 이해하기 어려운 내용이 있다면 Discussions 탭에 올려서 참여자 및 코치들과 함께 의논해보면 더 좋을 것 같습니다 :)

@Chaedie Chaedie merged commit 16e6492 into DaleStudy:main Jan 19, 2025
1 check passed
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.

None yet

3 participants