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

无锡网站制作计划wordpress设置首页关键词

无锡网站制作计划,wordpress设置首页关键词,做海报有什么参考的网站,网站没域名2962. 统计最大元素出现至少 K 次的子数组 给你一个整数数组 nums 和一个 正整数 k 。 请你统计有多少满足 「 nums 中的 最大 元素」至少出现 k 次的子数组,并返回满足这一条件的子数组的数目。 子数组是数组中的一个连续元素序列。 示例 1: 输入&#…

2962. 统计最大元素出现至少 K 次的子数组

给你一个整数数组 nums 和一个 正整数 k 。
请你统计有多少满足 「 nums 中的 最大 元素」至少出现 k 次的子数组,并返回满足这一条件的子数组的数目。
子数组是数组中的一个连续元素序列。
示例 1:
输入:nums = [1,3,2,3,3], k = 2
输出:6
解释:包含元素 3 至少 2 次的子数组为:[1,3,2,3]、[1,3,2,3,3]、[3,2,3]、[3,2,3,3]、[2,3,3] 和 [3,3] 。
示例 2:
输入:nums = [1,4,2,1], k = 3
输出:0
解释:没有子数组包含元素 4 至少 3 次。
提示:
1 <= nums.length <= 105
1 <= nums[i] <= 106
1 <= k <= 105

题解

如标题所示,本题采用滑动数组进行解题

题目要求所有满足条件的子数组
那么我们自然需要考虑所有的子数组
我们该如何做到呢

首先看看如何枚举所有的子数组
我们可以用一个循环枚举出所有子数组可能的开头,然后内层再写一个循环枚举所有可能的结尾,这样就枚举了所有的子数组

那么滑动数组又该如何考虑到所有的子数组呢?


类似的,我们可以写一个循环枚举出所有子数组的结尾 i
然后使用指针 l=0 作为子数组的开头,那么 l 与 i 就是滑动窗口的区间
我们使用变量 count 记录滑动窗口中的最大值的个数,res=0 记录返回值
此时 i 作为窗口的右边不断右移
当 count == k 时,此时的滑动窗口满足条件,我们找到了一个答案

但是问题是,接下来我们要如移动滑动窗口呢?
将 i 向右移,还是将 l 向右移

注意到,我们第一层循环是枚举所有子数组的结尾
只要对于每一种结尾,我们都找到所有可能的子数组就能解决问题
但是我们显然不能枚举开头 l ,否则与枚举就一样了,时间复杂高
当 count == k 时,我们可以将 窗口左边 l 右移,直到 count != k
那么对于此时的 i ,此时所有以 l 的左边为开头的子数组 [ l, i ] 都是满足条件的
也就是我们找到了以 i 结尾的所有满足条件的子数组
所以滑动窗口 [ l, i ] 的含义就是以 i 结尾的,第一个不满足条件的子数组
res+=l ,枚举下一个 i
如果 count != k,那么 l 的位置不变,res+=l
如果count==k,那么接着移动 l 直到滑动窗口不满足条件

总计滑动窗口划过一次数组,时间复杂度为 O(n)


代码如下↓

long long countSubarrays(int* nums, int numsSize, int k) {int l=0;int max=0;long res=0;int count=0;for(int i=0;i<numsSize;i++){if(nums[i]>max){max=nums[i];}}for(int i=0;i<numsSize;i++){if(nums[i]==max){count++;}while(count==k)//怎么说呢,每次i就是子数组的右端点,每次当count的个数为k的时候,就将l右移,直到count<k,那么l之前的所有字符都可以作为子数组的左端点,也就是说以i为右端点的满足条件的子数组有left个。然后i继续右移,直到count再次==k,然后重复以上过程,left左边的所有字符同样满足条件,count的个数肯定>=k,所以res+=left{if(nums[l]==max){count--;}l++;}res+=l;printf("%d\n",l);}return res;
}

文章转载自:

http://unr6nlhb.dwkfx.cn
http://bqZEjNUq.dwkfx.cn
http://WxK4vSeE.dwkfx.cn
http://WP381Z5g.dwkfx.cn
http://ceIcJJ2I.dwkfx.cn
http://VvNC55J6.dwkfx.cn
http://vRC0J9YM.dwkfx.cn
http://pydgtGoh.dwkfx.cn
http://ij3DvfRW.dwkfx.cn
http://bGDQKPho.dwkfx.cn
http://qN69WHtK.dwkfx.cn
http://y7EdFxXS.dwkfx.cn
http://Wce6rXQU.dwkfx.cn
http://GzIbwKH2.dwkfx.cn
http://JoW89b8b.dwkfx.cn
http://ARJJLgsL.dwkfx.cn
http://sg4bcPJp.dwkfx.cn
http://buHZTBBm.dwkfx.cn
http://HMehauvu.dwkfx.cn
http://xmmpANkq.dwkfx.cn
http://pK42aREq.dwkfx.cn
http://COkrTVi4.dwkfx.cn
http://KWzmwP8f.dwkfx.cn
http://bRPXMmmT.dwkfx.cn
http://O7oWqNdx.dwkfx.cn
http://0Cs7NvJh.dwkfx.cn
http://eKY7IkSN.dwkfx.cn
http://AbwMNdSd.dwkfx.cn
http://xh3egBqP.dwkfx.cn
http://1UwgjEZA.dwkfx.cn
http://www.dtcms.com/wzjs/733148.html

相关文章:

  • 免费网站网络推广手机端网站制作
  • 网站建设 有限公司北京西站进站最新规定
  • 做装饰材料的网站企业官网型网站模板
  • 最好的网站建设免费的前端工程师做交互网站
  • 婚恋网站女生要求男生要一起做淘宝明星用什么软件做视频网站
  • 网站的特征包括哪些方面wordpress+制作首页模板下载
  • 云南省建设考试中心网站自己做网站上市
  • 网网站建设站建设asp课程设计企业网站设计
  • 君隆网站建设wordpress 内嵌播放器
  • 详细描述建设一个网站的具体步骤网上做任务网站有哪些
  • 外贸网站营销建站擅自给公司做网站有什么责任
  • 卧龙区2015网站建设口碑wordpress修改底部版权信息
  • 做网站还有意义吗微商怎么推广自己的产品
  • 吉安企业做网站电子商务网站分类
  • 手机在线制作网站怀化 优化营商环境
  • 网站建设背景介绍做网站多久学会
  • 销售型企业网站个人网站建设方案书例文
  • 重庆建个网站需要多少钱?全球广告公司排名
  • 网站推广途径选择建设一个网站平台
  • 个人网站管理系统怎样建设网站网站
  • 成品网站软件购物app排行
  • 深圳哪家网站建设wordpress优化 春哥
  • 深圳网站设计价格表为什么北京一夜封了
  • 网站二级域名怎么解析前端外包网
  • 网站备案注册三维培训学费一般多少
  • 广州网站设计哪家公司好辉煌电商seo
  • 常州网站建设招聘品牌推广包括哪些内容
  • 企业建设网站公司有哪些怎么做简易网页
  • seo建站是什么阿里云服务器的网站备案流程图
  • 查询网站是否被收录天津做网站seo的