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

做超链接的网站沈阳企业网站seo公司

做超链接的网站,沈阳企业网站seo公司,长沙装修网站排名,做网站要会没软件问题背景 给你一个整数数组 n u m s nums nums 和一个 正整数 k k k。 请你统计有多少满足 「 n u m s nums nums 中的 最大 元素」至少出现 k k k 次的子数组,并返回满足这一条件的子数组的数目。 子数组是数组中的一个连续元素序列。 数据约束 1 ≤ n u m s …

问题背景

给你一个整数数组 n u m s nums nums 和一个 正整数 k k k
请你统计有多少满足 「 n u m s nums nums 中的 最大 元素」至少出现 k k k 次的子数组,并返回满足这一条件的子数组的数目。
子数组是数组中的一个连续元素序列。

数据约束

  • 1 ≤ n u m s . l e n g t h ≤ 1 0 5 1 \le nums.length \le 10 ^ 5 1nums.length105
  • 1 ≤ n u m s [ i ] ≤ 1 0 6 1 \le nums[i] \le 10 ^ 6 1nums[i]106
  • 1 ≤ k ≤ 1 0 5 1 \le k \le 10 ^ 5 1k105

解题过程

子数组长度越大,最大元素出现次数越有可能满足条件,适用滑窗。
累计答案时有两种思路,在内层循环中,可以固定左端点,当前右端点直到数组末尾都是合法的答案,共有 ( n − r i g h t ) (n - right) (nright) 个;在内层循环结束时,可以固定右端点,数组开头直到当前左端点都是合法的答案,共有 l e f t left left 个。

具体实现

class Solution {public long countSubarrays(int[] nums, int k) {long res = 0;int target = 0;for (int num : nums) {target = Math.max(target, num);}int count = 0;for (int left = 0, right = 0; right < nums.length; right++) {if (nums[right] == target) {count++;}while (count >= k) {if (nums[left] == target) {count--;}                left++;// 在内层循环中统计答案,固定左端点得到的所有子数组都是符合条件的res += n - right;}// 在内层循环结束时统计答案,固定右端点得到的所有子数组都是符合条件的// res += left;}return res;}
}
http://www.dtcms.com/wzjs/410953.html

相关文章:

  • 注册一个互联网公司需要多少钱旺道seo优化
  • 阿里云免费域名注册兰州网站seo诊断
  • 个人养老保险缴费明细查询seo优化推广软件
  • 未来做那些网站能致富视频剪辑培训班一般学费多少
  • ping网站域名福州网站建设策划
  • 主题 外贸网站 模板下载安徽seo网络优化师
  • 北京做域名公司seo网站页面优化包含
  • 连云港企业网站制作西安seo推广优化
  • 营销中台汕头seo排名
  • 企业网站建设的作用留号码的广告网站不需要验证码
  • 上海网站制作与推广关键词如何快速排名
  • 注册个人工作室流程及费用东莞seo关键词
  • 自己建设博客网站跨界营销案例
  • 【郑州网站建设】营销团队公司
  • 旅游网网站的设计windows优化大师是自带的吗
  • 建立网站流程图域名解析查询
  • 镇江润州区建设局网站ciliba磁力猫
  • 电商网站开发ppt手机网站自助建站系统
  • 网站开发语言总结东莞百度推广排名优化
  • 在国外网站建设营销型企业网站的功能
  • 广西电力工程建设公司网站外贸网站建站
  • 在中国做博彩网站违法吗长沙seo网站优化
  • 单位网站建设意见网站seo价格
  • 网址的域名是什么seo优化在线
  • 微信分销网站开发网址链接
  • 网站功能模块介绍2022年小学生新闻摘抄十条
  • 网络推广服务费福州seo兼职
  • 有哪些网站做团购最好怎样申请网站注册
  • wordpress修订管理seo快排
  • 北京最新的疫情情况沈阳seo优化新势力