当前位置: 首页 > article >正文

日拱一卒(20)——leetcode学习记录:大小为 K 且平均值大于等于阈值的子数组数目

一、题目

给定数组,统计数组中长度为k的子数组且该子数组的平均值大于threshold的数量

二、思路

滑动窗思路,计算长度为k的滑动窗的平均值,关键点在于,每滑动一次,只需要去掉头增加尾,而不需要重新全部计算,进而将计算量从O(n*k)降低为O(n)

三、题解

class Solution:

    def numOfSubarrays(self,arr,k,threshold):

        curr = sum(arr[:k])

        n = len(arr)

        count = 1 if curr >= threshold*k else 0

        for i in range(k,n):

            curr += arr[i] - arr[i-k]

            count += 1 if curr >= threshold*k else 0

        return count


http://www.kler.cn/a/508030.html

相关文章:

  • ICC和GCC编译器编译Openmp程序的运行区别
  • Flask学习入门笔记
  • 数智化转型 | 星环科技Defensor 助力某银行数据分类分级
  • Java设计模式——单例模式(特性、各种实现、懒汉式、饿汉式、内部类实现、枚举方式、双重校验+锁)
  • 【Uniapp-Vue3】uni-api交互反馈showToast的使用方法
  • DM达梦启用及收集AWR报告
  • Android wifi热点开关代码记录
  • 代码随想录算法训练营第三十五天-动态规划-01背包(一维)
  • 敏感信息数据搜集系统全英文
  • 【MySQL】表操作
  • C语言的语法糖
  • IvorySQL 4.2 发布
  • 25/1/17 嵌入式笔记 STM32F103
  • 利用.NET版Word处理控件Aspose.Words,使用 C# 在 Word 中创建图表
  • MySQL SQL优化技巧与原理
  • 【HarmonyOS之旅】基于ArkTS开发(二) -> UI开发三
  • 如何实现圆形头像效果
  • 基于TypeScript封装 `axios` 请求工具详解
  • openharmony测试子系统
  • 【React】函数组件底层渲染机制
  • 【2024年华为OD机试】 (B卷,200分)- 二叉树中序遍历(Java JS PythonC/C++)
  • GIFT ICA 下载记录
  • Flink的优化技巧
  • 力扣-数据结构-21【算法学习day.92】
  • 如何选择适合特定项目需求的人工智能学习框架?
  • python-44-嵌入式数据库SQLite和DuckDB