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

做网站图片大会导致慢宁波关键词优化排名工具

做网站图片大会导致慢,宁波关键词优化排名工具,群晖做网站域名,环保网站建设情况报告给你一个由 正 整数组成的数组 nums 。 如果数组中的某个子数组满足下述条件,则称之为 完全子数组 : 子数组中 不同 元素的数目等于整个数组不同元素的数目。 返回数组中 完全子数组 的数目。 子数组 是数组中的一个连续非空序列。 示例 1&#xff…

给你一个由  整数组成的数组 nums 。

如果数组中的某个子数组满足下述条件,则称之为 完全子数组 :

  • 子数组中 不同 元素的数目等于整个数组不同元素的数目。

返回数组中 完全子数组 的数目。

子数组 是数组中的一个连续非空序列。

示例 1:

输入:nums = [1,3,1,2,2]
输出:4
解释:完全子数组有:[1,3,1,2]、[1,3,1,2,2]、[3,1,2] 和 [3,1,2,2] 。

示例 2:

输入:nums = [5,5,5,5]
输出:10
解释:数组仅由整数 5 组成,所以任意子数组都满足完全子数组的条件。子数组的总数为 10 。

提示:

  • 1 <= nums.length <= 1000
  • 1 <= nums[i] <= 2000

 解题思路

当数组长度越长时,显然越容易满足题意。对于这种问题,要用滑动窗口来解决。

枚举右端点r,同属用哈希表存储。当nums[r]加入后哈希表长度等于k时,‘说明此时窗口满足题意,移动左端点l,表示要移除的元素,当--nums[l]==0时,从哈希表中移除这个元素,表示不同数字个数少一。

内层循环结束后,ans+=left。因为数组长度越长越容易符合题意,所以left-1到0的位置都是符合题意的子数组。一共有left个。

 小技巧,统计nums中不同数字个数的方法

unordered_set<int> st(nums.begin(),nums.end());
int k = st.size();

完整代码

class Solution {
public:int countCompleteSubarrays(vector<int>& nums) {unordered_set<int> st(nums.begin(),nums.end());int k = st.size();unordered_map<int,int> cnt;int ans = 0,left = 0;for(int x : nums){cnt[x]++;while(cnt.size() == k){//当窗口中不同数字的个数符合要求时//缩小窗口int out = nums[left];if(--cnt[out] == 0){cnt.erase(out);}left++;}ans += left;//}return ans;}
};

http://www.dtcms.com/wzjs/337724.html

相关文章:

  • 网站优化专家18600119496seo教程
  • 韩国男女做那个视频网站360搜索推广
  • 外贸网站建设电话开鲁网站seo不用下载
  • 手机免费做网站公司网站的推广方案
  • 做图骂人的图片网站网站如何推广出去
  • 深圳网站建设公司排行榜seo的中文含义
  • 乐清门户网站网络营销推广技巧
  • .net做网站的吗百度seo营销
  • 石景山网站建设自己怎么做一个网页
  • wamp可以做视频网站吗app引流推广方法
  • 做网站 图片格式成都网络推广哪家好
  • 杭州湾新区开发建设公司网站seo数据监控平台
  • 网站开发的现状研究seo资料
  • 医美的网站主页怎么做公关
  • 广东手机网站建设报价表大概需要多少钱
  • 公司注册流程及注意事项及细节信息流优化师是什么
  • 在网上做黑彩网站会怎样只需要手机号的广告
  • 龙华新区网站建设深圳优化怎么做搜索
  • 建设网站费用记入什么科目2023年第三波疫情9月
  • php和java哪个做网站浩站长统计app软件大全
  • 有专门做市场分析的网站么网站seo源码
  • 网站建设中是因为没有ftp上传吗杭州百度快照
  • 苏州大型网站建设广州seo推广营销
  • 简单的电影网站模板营销软文范文
  • 网站前端设计培训如何网上销售自己的产品
  • 购物网站建设模板搜索引擎优化关键字
  • 长沙做手机网站windows优化大师最新版本
  • 网站建设费用有哪些方面宁德市疫情最新消息
  • 广州微信网站刷关键词排名软件
  • 受和攻不停的做漫画网站市场营销策划方案模板