643. Maximum Average Subarray I 最大子陣列平均數
阿新 • • 發佈:2017-07-16
bject ble height r12 for over xpl example padding
null
Given an array consisting of n
integers, find the contiguous subarray of given length k
that has the maximum average value. And you need to output the maximum average value.
Example 1:
Input: [1,12,-5,-6,50,3], k = 4Output: 12.75Explanation: Maximum average is (12-5-6+50)/4 = 51/4 = 12.75
Note:
1 <=
k
<=n
Elements of the given array will be in the range [-10,000, 10,000].
題意:求一個數組的最大子陣列平均數
思路:運用動態規劃,找出和最大,長度為k的子陣列
12345678910111213141516171819 | class Solution( object ): def findMaxAverage( self , nums, k): """ :type nums: List[int] :type k: int :rtype: float """ sum = 0 curSum = 0 addNum = 0 for i in range ( 0 , len (nums)): if addNum < k: curSum + = nums[i] sum = curSum addNum + = 1 else : curSum = curSum - nums[i - k] + nums[i] sum = max ( sum , curSum) return sum * 1.0 / k |
null
643. Maximum Average Subarray I 最大子陣列平均數