로딩
요청 처리 중입니다...

JAVA_LeetCode 198_House Robber

 JAVA_LeetCode 198_House Robber

JAVA_LeetCode 198_House Robber 풀이 class Solution { public int rob(int[] nums) { // 현재 위치, 인접 위치 중 가장 큰 값을 찾아 점차 더해간다. if(nums == null || nums.length == 0) return 0; int len = nums.length; if(len == 1) return nums[0]; int[] dp = new int[len]; dp[0] = nums[0]; dp[1] = Math.max(nums[0], nums[1]); for (int i = 2; i < len; i++) { // 현재 집 i를 털 경우 (i - 2까지 최대값 + 현재 집 금액)와 // 집 i를 털지 않고 i - 1까지의 최대값 중 좋은 값 선택 dp[i] = Math.max(dp[i - 1], dp[i - 2] + nums[i]); } return dp[len - 1]; } } dp를 이용, 현재 위치 기준 인접...