代码拉取完成,页面将自动刷新
struct Solution {}
impl Solution {
pub fn find_radius(houses: Vec<i32>, heaters: Vec<i32>) -> i32 {
let mut houses = houses;
let mut heaters = heaters;
houses.sort();
heaters.sort();
let mut s = heaters.binary_search(&houses[0]).unwrap_or_else(|x| x);
let l = heaters.len();
let mut ret = 0;
for h in houses {
while s + 1 < l && h >= heaters[s + 1] {
s += 1;
}
if h <= heaters[0] {
ret = ret.max(heaters[0] - h);
} else if s == l - 1 {
ret = ret.max(h - heaters[l - 1])
} else {
ret = ret.max((h - heaters[s]).min(heaters[s + 1] - h));
}
}
ret
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。