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

网站建设求职具备什么怎么推广平台

网站建设求职具备什么,怎么推广平台,电子商务网站规划从哪些方面入手,网页设计代码中字体的颜色如何改P1638 逛画展 - 洛谷 | 计算机科学教育新生态 这道题我们只要用一个kind和一个mp[N]的数组就能解决了 我们的解法1就是暴力枚举,先固定2,从2开始找连续的满足所有种类的最短的子数组,然后固定5,3,1,3&…

P1638 逛画展 - 洛谷 | 计算机科学教育新生态

这道题我们只要用一个kind和一个mp[N]的数组就能解决了

我们的解法1就是暴力枚举,先固定2,从2开始找连续的满足所有种类的最短的子数组,然后固定5,3,1,3,2,分别找出满足所有种类的最短子数组

mp[i]如果是从0到1,kind++,如果是从1到0,kind--

如图,暴力枚举的话j指向的一定是第一次出现的最新的元素种类,如果我们是暴力枚举的话,我们枚举5的时候,j也会回到5

我们对5枚举的时候,j一定会再走到4那个位置,我们何必让j回退呢?

那我们的算法流程就是用left和right指针指向第一个元素,然后让right指针向后走把每个元素进窗口,如果kind种类够了的话,left不断++,再不断更新每个合法的子数组的大小,直到kind不够了再退出去继续right向后走

比如这是一种结果,2出窗口后又是一个结果 

5出窗口后种类不够了,j向后走

不满足要求就不更新结果直到再次符合要求,我们再次让left出窗口

到这里把3出窗口之后再次成为不合法数组

再次合法,继续出left,出了一个就不合法了,right向后走一格,结束

我们来展示一下代码

#include <iostream>
using namespace std;const int N = 1e6+10;
int n,m;
int mp[N];
int a[N];
int main()
{cin >> n  >> m;for(int i = 1;i<=n;i++) cin >> a[i];int kind = 0;int left = 1 , right = 1;int ret = n,begin = 1;while(right<=n){if(mp[a[right]]++ == 0) kind++;while(kind == m){int len = right-left+1;if(len < ret){ret = len;begin = left;}if(mp[a[left]]-- == 1) kind--;left++;}	right++;}cout << begin <<" " << begin+ret-1<< endl;return 0;
}

http://www.yayakq.cn/news/85506/

相关文章:

  • 开鲁网站seo免费版h5网页开发
  • 企业网站建设需要什么资料网站编辑 seo是什么 百度知道
  • wordpress 本地建站教程东莞网站建设 硅胶
  • 免费制作广州网站用word做网站
  • 网站开发实践报告郑州百度推广开户
  • 网站建设策划报告网络域名是什么意思
  • 怎么在wordpress建站企业网站建设顾问
  • wordpress怎么生成网站地图做网站的说3年3年包括什么软件
  • 在哪儿可以找到网站开发的需求建设企业网站的好处
  • 网站建设行业地位做外贸需要网站吗
  • 怎么做转载小说网站标小智logo设计官网
  • 2网站制作商城简介
  • 百度搜索网站在第一次输入搜索内容后点搜索键没有反应北语网站app
  • 网站运营的主要内容清理wordpress头部
  • 一流的山西网站建设网站建设论文选题
  • 网站浮动条网络推广100种方式
  • 网站google搜索优化亚马逊的网络营销方式
  • 访问不了服务器的网站特色企业网站
  • 做调查可以赚钱的网站网址导航设主页
  • 好学校平台网站模板下载用内网穿透做网站可以被收录吗
  • 品牌网站建设专家青海省高等级公路建设管局网站
  • 个人网站备案的好处四平网站建设营销
  • 深圳网站制作招聘自己做网站需要钱吗
  • 官方网站怎么建设的centos怎么装WordPress
  • 自己做网站要办手续吗免费自助建网站
  • 渝水区城乡建设局网站wordpress 换轮播如
  • 生产做网站表带的制造厂家济南新站seo外包
  • 新网站如何做营销电子商务师证报考官网
  • 怎么在电脑上建立自己的网站wordpress如和安装
  • seo优化网站源码网站设计想法