经典双指针问题

news2024/11/15 11:18:43

思路;先找到第一个包含m家店的区间(l-r),然后开始进行双指针(l,r)滑动(如下滑动)

while(r<=n)
	{
		while(vis[a[l]]>1)//当前l-r之间a[l]店铺有多个(大于一个),那即可去掉当前l
		{
			vis[a[l]]--;
			l++;
		}
		if(ans>=(c[r]-c[l-1]))
		{
			ansl=l,ansr=r,ans=c[r]-c[l-1];
		}
		r++;
		vis[a[r]]++;
	}

ACcode:

#include<bits/stdc++.h>
using namespace std;

#define N 100005
#define ll long long

int n,m;
int ansl,ansr;
ll a[N],b[N],c[N],vis[N];
ll ans;

int main()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++)cin>>a[i];
	for(int i=1;i<=n;i++)
	{
		cin>>b[i];
		c[i]=c[i-1]+b[i];
	}
	int l=1,r=0,cnt=0;
	ll sum=0;
	while(r<=n)
	{
		r++;
		if(!vis[a[r]])cnt++;
		vis[a[r]]++;
		if(cnt==m)break;
	}
	ansl=l,ansr=r,ans=c[r];
	while(r<=n)
	{
		while(vis[a[l]]>1)
		{
			vis[a[l]]--;
			l++;
		}
		if(ans>=(c[r]-c[l-1]))
		{
			ansl=l,ansr=r,ans=c[r]-c[l-1];
		}
		r++;
		vis[a[r]]++;
	}
	cout<<ansl<<" "<<ansr<<" "<<ans;
	return 0;
}

over~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1536337.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

macOS下Java应用的打包和安装程序制作

macOS应用程序结构 macOS通常以dmg或pkg作为软件发行包&#xff0c;安装到/Applications下后&#xff0c;结构比较统一。 info.plist里的CFBundleExecutable字段可以指定入口&#xff0c;如果不指定&#xff0c;则MacOS下必须存在同名可执行文件。即abc.app下必须存在abc.app/…

从原理到实践:深入探索Linux安全机制(一)

前言 本文将从用户和权限管理、文件系统权限、SELinux、防火墙、加密和安全传输、漏洞管理和更新等几个Linux安全机制中的重要方面&#xff0c;深入探索其工作原理和使用方法。在当今数字化时代&#xff0c;网络安全问题备受关注&#xff0c;Linux作为广泛应用的操作系统之一&…

【GPT概念04】仅解码器(only decode)模型的解码策略

一、说明 在我之前的博客中&#xff0c;我们研究了关于生成式预训练转换器的整个概述&#xff0c;以及一篇关于生成式预训练转换器&#xff08;GPT&#xff09;的博客——预训练、微调和不同的用例应用。现在让我们看看所有仅解码器模型的解码策略是什么。 二、解码策略 在之前…

财报解读:“高端化”告一段落,华住开始“全球化”?

2023年旅游业快速复苏&#xff0c;全球酒店业直接受益&#xff0c;总体运营指标大放异彩&#xff0c;多数酒店企业都实现了营收上的明显增长&#xff0c;身为国内龙头的华住也不例外。 3月20日晚&#xff0c;华住集团发布2023年四季度及全年财报。整体实现扭亏为盈&#xff0c;…

阿里云安装宝塔后面板打不开

前言 按理来说装个宝塔面板应该很轻松的&#xff0c;我却装了2天&#xff0c;真挺恼火的&#xff0c;网上搜的教程基本上解决不掉我的问题点&#xff0c;问了阿里云和宝塔客服&#xff0c;弄了将近2天&#xff0c;才找出问题出在哪里&#xff0c;在此记录一下问题的处理。 服…

深度探析:7天后不过期的微信群二维码生成的优势

在日常生活和工作中&#xff0c;微信不过期二维码深受用户的欢迎。因为传统的微信群二维码被下载下来后&#xff0c;只有7天有效期。但企业在日常运营中&#xff0c;如果直接使用下载下来的微信群二维码&#xff0c;会造成很多的不便和宣传资源浪费。这些问题&#xff0c;可以通…

华为ensp中ospf基础 原理及配置命令(详解)

CSDN 成就一亿技术人&#xff01; 作者主页&#xff1a;点击&#xff01; ENSP专栏&#xff1a;点击&#xff01; CSDN 成就一亿技术人&#xff01; ————前言———— OSPF 的全称是 Open Shortest Path First&#xff0c;意为“开放式最短路径优先”。是一种内部网关协…

MySQL之基本操作与用户授权

一 基本操作 1 SQL分类 数据库&#xff1a;database 表&#xff1a;table&#xff0c;行&#xff1a;row 列&#xff1a;column 索引&#xff1a;index 视图&#xff1a;view 存储过程&#xff1a;procedure 存储函数&#xff1a;function 触发器&#xff1a;trigger 事…

“Python神技:一键转换PPT页面为高清图片,源码大公开!”(附Python源码)

今天让claude3帮忙写了个python代码&#xff0c;实现了将ppt转换成图片功能。WPS中实现这个功能还需要开通会员&#xff0c; 其实也就一点代码就可以实现&#xff0c;而且powerpoint中还没有这个将页面转换成图片的功能&#xff0c;废话不多说&#xff0c;直接上源码。 import …

欧科云链:从技术与数据视角,看Solana如何成为Web3“流量担当”?

出品&#xff5c;欧科云链研究院 作者&#xff5c;Jason Jiang 坎昆升级完成后&#xff0c;除一众L2手续费锐减外&#xff0c;以太坊生态并未掀起涟漪&#xff0c;相反Solana凭借一波短暂的Meme热潮&#xff0c;再次成为焦点。尽管本周Solana生态的Meme热度褪去&#xff0c;但…

最新,955神仙公司名单(非外企)

955 神仙公司名单&#xff08;非外企&#xff09; 往常爆料最多的 955 神仙公司名单通常都是集中在一线城市的外企。 例如下面这张最为流行的名单图&#xff1a; 最近牛客网上有同学整理出了非外企的版本&#xff0c;其中不乏一些耳熟能详的互联网产品。 随手把名单分享给大家。…

SDKMAN多版本SDK并行管理工具

一、简介 SDKMAN是管理多个SDK并行版本的工具&#xff0c;它提供了方便的命令行界面&#xff08;CLI&#xff09;和API&#xff0c;用于列出&#xff0c;安装&#xff0c;切换和删除候选对象。此外&#xff0c;它还为我们设置了环境变量。 它还允许开发人员安装基于JVM的SDK&…

短剧分销cps推广很简单,短剧分销授权平台怎么搭建?

一、短剧分销是什么&#xff1f; 短剧分销&#xff0c;也被称为短剧CPS&#xff0c;是一种通过推广短剧并获得收益的方式。分销方会提供短剧片单&#xff0c;内容创作者可以根据这些片单剪辑成短视频内容进行分发。这样既能避免版权问题&#xff0c;又可以利用优质内容吸引用户…

JAVA入门第一步

学习总结&#xff1a; 打开CMD常见的CMD命令 一、打开CMD CMD的概念 CMD是Windows操作系统中的命令提示符(Command Prompt)程序&#xff0c;它是一种命令行工具&#xff0c;可以让用户通过键入命令来与计算机进行交互。CMD是Windows中一个基本的系统组件&#xff0c;它提供了一…

基于springboot+vue的库存管理系统

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战&#xff0c;欢迎高校老师\讲师\同行交流合作 ​主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Pyt…

SQL:窗口函数之OVER()

窗口函数 通用格式 “函数 OVER (PARTITION BY 分组 ORDER BY 排序依据 升降序)”。 这里记录下OVER() 以及搭配LEAD/LAG函数的使用方法&#xff08;执行平台Impala&#xff09; 目录 OVER函数1、不加条件的OVER函数——得到所有的汇总结果2、仅有排序的OVER函数——得到按顺序…

基于XENSIV电容原理的KP236N6165XTMA1、KP276D1201XTMA1、KP276D1505XTMA1压力传感器,采用BiCMOS技术

1、XENSIV™ KP236N6165 压力传感器 23.93PSIA 4.85V DSOF8 描述&#xff1a;KP236N6165XTMA1 是一款模拟大气压力传感器&#xff0c;适用于大温度范围的汽车应用。它采用表面微加工技术&#xff0c;内置一个采用BiCMOS技术的单片集成信号调理电路。该器件将60 kPa至165 kPa的…

题注或页码中不含章节编号。若要应用章节编号,请使用“开始”选项卡上的“多级列表”按钮,然后选择连接到标题样式的编号方案

问题&#xff1a; 给图片或表格插入含有章节号的题注时&#xff0c;提示【题注或页码中不含章节编号。若要应用章节编号&#xff0c;请使用“开始”选项卡上的“多级列表”按钮&#xff0c;然后选择连接到标题样式的编号方案】。 原因&#xff1a; 当前图片或表格所在的段落…

力扣Lc20--- 202.快乐数(java版)-2024年3月20日

1.题目 2.知识点 &#xff08;1&#xff09;while (seen.contains(n) false) { // 循环体 } 与 !seen.contains(n) 等同 &#xff08;2&#xff09; 当传入数字 19 给 isHappy(19) 方法时&#xff0c;下面是每一行代码的执行过程&#xff1a; 初始化一个空的 HashSet&#…

Python 日志记录库之loguru使用详解

概要 在软件开发中,良好的日志记录是至关重要的。它不仅可以帮助开发人员跟踪应用程序的运行状态和诊断问题,还可以为用户提供更好的支持和维护。而Python的Loguru库则为日志记录提供了一种简洁而强大的解决方案。本文将深入探讨Loguru库的各个方面,包括其基本概念、功能、…