zoukankan      html  css  js  c++  java
  • 475. Heaters

    /**
    475. Heaters
    https://leetcode.com/problems/heaters/
    Winter is coming! During the contest, your first job is to design a standard heater with a fixed warm radius to warm all the houses.
    Every house can be warmed, as long as the house is within the heater's warm radius range.
    Given the positions of houses and heaters on a horizontal line,
    return the minimum radius standard of heaters so that those heaters could cover all houses.
    Notice that all the heaters follow your radius standard, and the warm radius will the same.
    
    Example 1:
    Input: houses = [1,2,3], heaters = [2]
    Output: 1
    Explanation: The only heater was placed in the position 2, and if we use the radius 1 standard, then all the houses can be warmed.
    
    Example 2:
    Input: houses = [1,2,3,4], heaters = [1,4]
    Output: 1
    Explanation: The two heater was placed in the position 1 and 4. We need to use radius 1 standard, then all the houses can be warmed.
    
    Example 3:
    Input: houses = [1,5], heaters = [2]
    Output: 3
    
    Constraints:
    1. 1 <= houses.length, heaters.length <= 3 * 10^4
    2. 1 <= houses[i], heaters[i] <= 109
    */
    
    pub struct Solution{}
    
    impl Solution {
        /*
        Solution 1: Bruce force, Time:O(m*n), Space:O(1);
        */
        pub fn find_radius(houses: Vec<i32>, heaters: Vec<i32>) -> i32 {
            let mut result = 0;
            for house in houses {
                result = std::cmp::max(result,Self::checkMinDist(house,&heaters))
            }
            result
        }
    
        fn checkMinDist(house: i32, heaters:&Vec<i32>)->i32{
            let mut minDistance = std::i32::MAX;
            for heater in heaters {
                minDistance = std::cmp::min(minDistance, (heater-house).abs())
            }
            minDistance
        }
    }
  • 相关阅读:
    【博弈论】K倍动态减法游戏
    【博弈论】翻硬币游戏8种模型
    P4124 [CQOI2016]手机号码(数位DP,前导0)
    AtCoder Beginner Contest 146
    Sumitomo Mitsui Trust Bank Programming Contest 2019
    ICPC 2018 Nanjing Regional
    模拟退火基础学习&模板
    AtCoder Beginner Contest 117
    AtCoder Beginner Contest 118
    AtCoder Beginner Contest 119
  • 原文地址:https://www.cnblogs.com/johnnyzhao/p/15754811.html
Copyright © 2011-2022 走看看