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

[suwi] Week 04 #836

Merged
merged 10 commits into from
Jan 4, 2025
Merged

[suwi] Week 04 #836

merged 10 commits into from
Jan 4, 2025

Conversation

sungjinwi
Copy link
Contributor

@sungjinwi sungjinwi commented Jan 3, 2025

답안 제출 문제

체크 리스트

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

@sungjinwi sungjinwi requested a review from a team as a code owner January 3, 2025 12:49
@github-actions github-actions bot added the py label Jan 3, 2025
node.next = ListNode(list2.val)
list2 = list2.next
node = node.next
node.next = list1 or list2
Copy link
Contributor

Choose a reason for hiding this comment

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

안녕하세요 @sungjinwi

덕분에 if 문 없이 list1 or list2 으로 처리되는걸 알게 되었습니다.
감사합니다. 😊

Comment on lines 34 to 36
if any (dfs(m + r, n + c, idx + 1) \
for (r, c) in [(1, 0), (-1, 0), (0, 1), (0, -1)]):
return True
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

Choose a reason for hiding this comment

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

for문을 조회하면서 dfs를 실행시키고, 그 결과들 중 하나라도 True면, True를 반환하는 로직입니다
간편하기는 하지만 가독성을 향상시키는 방법으로 코드를 개선해보시면 어떨까 싶어요, 그리고 any는 iterable이 생성된 후 실행되기 때문에 early return으로 성능을 향상시킬 수도 있을 것 같아요.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

안녕하세요 any() 함수를 활용해보고 싶어서 저렇게 작성했는데요
any함수는 iterable 중에 0(False)이 아닌 것이 존재하면 True를 리턴합니다

dfs(m + 1, n, idx + 1)
dfs(m - 1, n, idx + 1)
dfs(m, n + 1, idx + 1)
dfs(m, n - 1, idx + 1)
# 상하좌우 재귀호출 된 결과 중 True가 있다면 True를 리턴하도록 했습니다

다시 보니 이렇게 풀이하는게 연산이 조금이라도 덜 일어날 것 같네요

for (r, c) in [(1, 0), (-1, 0), (0, 1), (0, -1)]) :
       if(dfs(m + r, n + c, idx + 1)) :
              return True

좋은 질문 감사합니다 또 궁금한거 있으시면 질문주세요!

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@EgonD3V 매주 좋은 리뷰 감사합니다!

Copy link
Contributor

@EgonD3V EgonD3V left a comment

Choose a reason for hiding this comment

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

이번 주도 수고많으셨습니다 다음 주도 화이팅입니다


while list1 and list2 :
if list1.val < list2.val :
node.next = ListNode(list1.val)
Copy link
Contributor

Choose a reason for hiding this comment

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

ListNode의 인스턴스를 새로 생성하기보다, 패러미터로 주어진 값들을 참조하는 방식의 풀이는 어떨까요?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

아 새로 안 만들고 바로 그냥 list1, list2를 할당해주면 되겠네요
어차피 next는 계속 업데이트되니까요! 감사합니다

Comment on lines 34 to 36
if any (dfs(m + r, n + c, idx + 1) \
for (r, c) in [(1, 0), (-1, 0), (0, 1), (0, -1)]):
return True
Copy link
Contributor

Choose a reason for hiding this comment

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

for문을 조회하면서 dfs를 실행시키고, 그 결과들 중 하나라도 True면, True를 반환하는 로직입니다
간편하기는 하지만 가독성을 향상시키는 방법으로 코드를 개선해보시면 어떨까 싶어요, 그리고 any는 iterable이 생성된 후 실행되기 때문에 early return으로 성능을 향상시킬 수도 있을 것 같아요.

@sungjinwi sungjinwi merged commit 5b454a8 into DaleStudy:main Jan 4, 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.

3 participants