-
-
Notifications
You must be signed in to change notification settings - Fork 247
[ohgyulim] WEEK 03 solutions #1800
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
고생 많으셨습니다. 전반적으로 풀이가 깔끔하네요. 리뷰어를 위해서 약간의 주석 처리해주시면 더 로직을 이해하는데 좋을거 같아요.
import java.util.*; | ||
|
||
class Solution { | ||
List<List<Integer>> answer = new ArrayList<>(); | ||
public List<List<Integer>> combinationSum(int[] candidates, int target) { | ||
Arrays.sort(candidates); | ||
recur(new ArrayList<Integer>(), candidates, target, 0, 0); | ||
return answer; | ||
} | ||
|
||
public void recur(List<Integer> result, int[] candidates, int target, int sum, int index) { | ||
if (sum == target) { | ||
List<Integer> deepCopyRes = new ArrayList<>(result); | ||
answer.add(deepCopyRes); | ||
return; | ||
} | ||
for (int i = index; i < candidates.length; i++) { | ||
if (sum + candidates[i] <= target) { | ||
result.add(candidates[i]); | ||
recur(result, candidates, target, sum + candidates[i], i); | ||
result.remove(Integer.valueOf(candidates[i])); | ||
} | ||
} | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
백트래킹으로 깔끔하게 잘 푸신거 같습니다.
public int hammingWeight(int n) { | ||
return Integer.bitCount(n); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
자바는 이렇게 내장함수로 풀 수있는 방법이 되게 좋네요. 다만 꼭 내장함수 말고도 풀수있는 방법이 있다면 고민해보시는것도 좋을거 같아요.
답안 제출 문제
작성자 체크 리스트
In Review
로 설정해주세요.검토자 체크 리스트
Important
본인 답안 제출 뿐만 아니라 다른 분 PR 하나 이상을 반드시 검토를 해주셔야 합니다!