精華區beta Marginalman 關於我們 聯絡資訊
643. Maximum Average Subarray I 題目: 要你計算 k 長度的子陣列的最大平均值 思路: 普通的 sliding windows 題目 考慮到這是刷題 還是手寫 不用 built-in 的 .windows() 這題其實也沒很 sliding windows 因為是用一個 sum 來儲存而不是真實的子陣列 Code: impl Solution { pub fn find_max_average(nums: Vec<i32>, k: i32) -> f64 { let k_usize = k as usize; let mut sum: i32 = nums[..k_usize].iter().sum(); let mut max_sum = sum; for i in k as usize..nums.len() { sum = sum - nums[i - k_usize] + nums[i]; max_sum = max_sum.max(sum); } max_sum as f64 / k as f64 } } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.248.143.163 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1749458316.A.9DB.html ※ 編輯: yam276 (60.248.143.163 臺灣), 06/09/2025 17:12:20