• LeetCode_198. House Robber


    198. House Robber

    Easy

    You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent houses have security system connected and it will automatically contact the police if two adjacent houses were broken into on the same night.

    Given a list of non-negative integers representing the amount of money of each house, determine the maximum amount of money you can rob tonight without alerting the police.

    Example 1:

    Input: [1,2,3,1]
    Output: 4
    Explanation: Rob house 1 (money = 1) and then rob house 3 (money = 3).
                 Total amount you can rob = 1 + 3 = 4.

    Example 2:

    Input: [2,7,9,3,1]
    Output: 12
    Explanation: Rob house 1 (money = 2), rob house 3 (money = 9) and rob house 5 (money = 1).
                 Total amount you can rob = 2 + 9 + 1 = 12.
    package leetcode.easy;
    
    public class HouseRobber {
    	public int rob(int[] nums) {
    		if (nums.length == 0) {
    			return 0;
    		}
    		if (nums.length == 1) {
    			return nums[0];
    		}
    
    		int[] dp = new int[nums.length + 1];
    		dp[1] = nums[0];
    		for (int i = 2; i < dp.length; i++) {
    			dp[i] = Math.max(nums[i - 1] + dp[i - 2], dp[i - 1]);
    		}
    		return dp[dp.length - 1];
    	}
    
    	@org.junit.Test
    	public void test() {
    		int[] nums1 = { 1, 2, 3, 1 };
    		int[] nums2 = { 2, 7, 9, 3, 1 };
    		System.out.println(rob(nums1));
    		System.out.println(rob(nums2));
    	}
    }
    
  • 相关阅读:
    解决Ubuntu下博通网卡驱动问题
    泛型的使用
    Http常见的响应头
    URL
    Tomcat目录结构
    Tomcat常见启动问题
    J2EE的13种核心技术
    css中相对定位和绝对定位
    Link标签
    html基本结构
  • 原文地址:https://www.cnblogs.com/denggelin/p/11718500.html
Copyright © 2020-2023  润新知