René's URL Explorer Experiment


Title: #644 - Maximum Average Subarray II - LeetCode JavaScript Solutions

Open Graph Title: #644 - Maximum Average Subarray II - LeetCode JavaScript Solutions

X Title: #644 - Maximum Average Subarray II - LeetCode JavaScript Solutions

Description: You are given an integer array nums consisting of n elements, and an integer k. Find a contiguous subarray whose length is greater than or e...

Open Graph Description: You are given an integer array nums consisting of n elements, and an integer k. Find a contiguous subarray whose length is greater than or e...

X Description: You are given an integer array nums consisting of n elements, and an integer k. Find a contiguous subarray whose length is greater than or e...

Keywords:

Opengraph URL: https://leetcodejavascript.com/solutions/maximum-average-subarray-ii

direct link

Domain: leetcodejavascript.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"Code","url":"https://leetcodejavascript.com/solutions/maximum-average-subarray-ii","name":"#644 - Maximum Average Subarray II - LeetCode JavaScript Solutions","description":"You are given an integer array nums consisting of n elements, and an integer k. Find a contiguous subarray whose length is greater than or e...","programmingLanguage":"JavaScript","codeRepository":"https://github.com/JoshCrozier/leetcode-javascript","codeSampleType":"JavaScript","text":"/**\n * @param {number[]} nums\n * @param {number} k\n * @return {number}\n */\nvar findMaxAverage = function(nums, k) {\n  const n = nums.length;\n  let minVal = Math.min(...nums);\n  let maxVal = Math.max(...nums);\n\n  while (maxVal - minVal > 1e-5) {\n    const mid = (minVal + maxVal) / 2;\n    if (canFindLargerAverage(nums, k, mid)) {\n      minVal = mid;\n    } else {\n      maxVal = mid;\n    }\n  }\n\n  return minVal;\n};\n\nfunction canFindLargerAverage(nums, k, target) {\n  let sum = 0;\n  let prevSum = 0;\n  let minPrevSum = 0;\n\n  for (let i = 0; i < k; i++) {\n    sum += nums[i] - target;\n  }\n\n  if (sum >= 0) return true;\n\n  for (let i = k; i < nums.length; i++) {\n    sum += nums[i] - target;\n    prevSum += nums[i - k] - target;\n    minPrevSum = Math.min(minPrevSum, prevSum);\n    if (sum - minPrevSum >= 0) return true;\n  }\n\n  return false;\n}","keywords":"LeetCode 644, #644 - Maximum Average Subarray II, Hard, JavaScript solution","learningResourceType":"Code","isAccessibleForFree":true,"educationalLevel":"intermediate","interactivityType":"mixed"}

authorLeetCodeJavascript.com
og:typearticle
og:imagehttps://leetcodejavascript.com/og-image.jpg
og:site_nameLeetCode JavaScript Solutions
twitter:cardsummary_large_image
twitter:urlhttps://leetcodejavascript.com/solutions/maximum-average-subarray-ii
twitter:imagehttps://leetcodejavascript.com/og-image.jpg
twitter:creator@joshcrozier
theme-color#1f2937

Links:

LeetCodeJavascript.com https://leetcodejavascript.com/
Star on GitHub https://github.com/JoshCrozier/leetcode-javascript
Back to all solutions https://leetcodejavascript.com
View on LeetCode https://leetcode.com/problems/maximum-average-subarray-ii/
View on GitHub https://github.com/JoshCrozier/leetcode-javascript/blob/master/solutions/0644-maximum-average-subarray-ii.js
Array https://leetcodejavascript.com/tags/array
Binary Search https://leetcodejavascript.com/tags/binary-search
Prefix Sum https://leetcodejavascript.com/tags/prefix-sum
Josh Crozierhttps://joshcrozier.com

Viewport: width=device-width, initial-scale=1.0

Robots: index, follow


URLs of crawlers that visited me.