Conversation
|
마지막에 개행 문자를 넣지 않아서 CI가 실패한 것인지... 이따가 퇴근하고 나서 확인해보겠습니다. |
|
현재로서는 개행 문자가 입력되지 않아 CI가 실패하는것으로 보입니다! 추가 후 재시도 부탁드립니다! |
|
House Robber 문제의 공간 복잡도를 개선했는데 오히려 memory usage는 높게 나오는 현상이 있었는데요 |
|
CI 실패는 개행 문자 추가로 해결했습니다. |
|
@forest000014 크 첫 주차에 최적화까지 진행해보셨군요 :-) |
| /* | ||
| [1, i]의 범위에서 최대값을 구하고자 할 때, 만약 [1, i-1]의 범위에서의 최대값을 이미 계산해 놓았다면 O(1)에 계산할 수 있다는 아이디어에서 출발합니다. | ||
| 단, 연속해서 두 집에서 훔칠 수 없다는 전제조건이 있으므로, i-1번째 집에서 훔친 경우와 훔치지 않는 경우 각각에 대한 최대값을 따로 구해두어야 합니다. | ||
| dp[i-1][0]에는 i-1번째 집에서 훔치지 않는 경우의 최대값, dp[i-1][1]에는 i-1번째 집에서 훔친 경우의 최대값이 저장되어 있다는 전제하에, | ||
| dp[i][0], dp[i][1]을 아래와 같이 구할 수 있습니다. | ||
|
|
||
| 1) i번째 집에서 훔치지 않는 경우의 [1, i] 범위에서의 최대값 | ||
| i번째 집에서는 훔치지 않을 것이므로, [1, i-1] 범위에서의 최대값이 dp[i][0]이 됩니다. | ||
| 단, 여기서 주의할 점은 dp[i-1][1]이 무조건 dp[i-1][0] 이상이라고 착각할 수 있다는 건데요, | ||
| {100, 1, 1, 100} 에서 dp[1][0] = 100, dp[1][1] = 1 이라는 케이스를 생각해보면, dp[i-1][0], dp[i-1][1]를 비교해서 큰 것을 선택해야 함을 알 수 있습니다. | ||
|
|
||
| 2) i번째 집에서 훔치는 경우의 [1, i] 범위에서의 최대값 | ||
| i번째 집에서 훔치기 위해서는, i-1번째 집에서는 훔치지 않았어야만 합니다. | ||
| 따라서 단순히 dp[i][1] = dp[i-1][0] + nums[i] 가 됩니다. |
There was a problem hiding this comment.
점화식 도출 과정을 자세히 적어주신 것 아주 훌륭한 것 같습니다
| sol 1. 재귀 호출 | ||
|
|
||
| 알고리즘 문제를 오랜만에 풀어서... union-find를 떠올리긴 했으나, 구현 방법이 가물가물해서 원하는 솔루션으로 풀지 못한 것 같습니다. | ||
| 일단 vis, cnt 와 재귀 호출을 사용해서 union-find와 유사하게 구현하긴 했는데요 (해설을 달면서 다시 보니 이것도 union-find를 구현하는 한 방법이라고 할 수 있을듯...?), |
There was a problem hiding this comment.
아이디어 떠올리고 끝까지 구현하는 능력이 좋으신 것 같아요 ㅎㅎ
다만 vis, cnt 및 재귀호출 스택 등의 추가적인 공간 사용을 줄일 방법이 있을 것 같습니다
나중에 시간 되시면 한 번 더 살펴보셔도 좋을 것 같아요
|
|
||
| class Solution { | ||
| public boolean isPalindrome(String s) { | ||
| for (int i = 0, j = s.length() - 1; i < j; i++, j--) { |
There was a problem hiding this comment.
사소함)
for 문 안에다가 i, j를 한 번에 이용하다 보니까 for 문 body의 로직이 가독성이 좀 더 떨어지는 것 같아요
좀 더 일반적인 코드처럼 while로 했으면 어떨까 하는 생각이 듭니다 ㅎㅎ
There was a problem hiding this comment.
이런 식으로 for문 안에 조건문과 증감식을 한번에 써 놓으면 왠지 nerd미가 더 느껴지는 것 같아서 습관이 들었었네요 ㅎㅎ 말씀을 듣고 보니 다른 사람과 함께 보기에는 가독성이 좀 떨어지는 것 같습니다. 다음 문제부터는 가독성도 함께 고려하면서 작성해보겠습니다! :)
obzva
left a comment
There was a problem hiding this comment.
한 주 고생하셨습니다! 집요함과 꼼꼼함이 보이는 풀이였습니다 :)
|
정성스런 코멘트가 코트 리뷰에 많은 도움이 되었습니다. |
답안 제출 문제
체크 리스트
In Review로 설정해주세요.