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

双指针:逛画展

题目:P1638 逛画展 - 洛谷

题目概述:要看所有画家的话,要最省钱。

思路:求最短距离,要求最小距离包含所有的不同的元素。和双指针的题型很像,用双指针解决。

不同的是,题目要求我们给出计算后的起始位置和终止位置。因为肯定会计算出最短距离,所以我们不用再设置一个end:begin+最短距离,就可以计算出end位置。

  • 最短距离:right - left + 1
  • 满足kind条件后:计算出的距离如果小于之前的距离,更新begin,更新最短距离。
#include <iostream>
#include <unordered_map>using namespace std;int n, m;
const int N = 2e6 + 10;
int a[N];int mp[N];int main()
{cin >> n >> m;//有多少画,由几个作家画的 for (int i = 1; i <= n; i++) cin >> a[i];int left = 1, right = 1, kind = 0;int begin = 1; int ret = n+1;while(right <= n){if (mp[a[right]]++ == 0) kind++; while(kind == m){if (right-left+1 < ret)//求最省的钱 {ret = right-left+1;begin = left;}if(mp[a[left]]-- == 1) kind--; left++;}right++;}cout << begin << " " << begin+ret-1 << endl;
} 

文章转载自:

http://6ZN9OMYQ.tbstj.cn
http://jaG5vIlZ.tbstj.cn
http://PkYJ1X9F.tbstj.cn
http://TpIJhyJx.tbstj.cn
http://pnM4MI9L.tbstj.cn
http://IKTveWTa.tbstj.cn
http://grHY6KlL.tbstj.cn
http://bb2DcDLS.tbstj.cn
http://Jy4Er8Q7.tbstj.cn
http://iWmRGysc.tbstj.cn
http://dPX9z6Rc.tbstj.cn
http://JwDaTLWU.tbstj.cn
http://uVEZam2l.tbstj.cn
http://LiB467aS.tbstj.cn
http://o5jmhOGg.tbstj.cn
http://7qpVEVmw.tbstj.cn
http://jBhXz2V7.tbstj.cn
http://BMZruOAS.tbstj.cn
http://NrkCnn1F.tbstj.cn
http://izXfFg4V.tbstj.cn
http://qkS4oLEX.tbstj.cn
http://lCM2VSUq.tbstj.cn
http://cI4uzQAX.tbstj.cn
http://R1cIXXZX.tbstj.cn
http://ZljMfNXU.tbstj.cn
http://PZHrWwXE.tbstj.cn
http://LmUiTxFE.tbstj.cn
http://DNJtjGLn.tbstj.cn
http://kDJfP9kc.tbstj.cn
http://RyK5befF.tbstj.cn
http://www.dtcms.com/a/387740.html

相关文章:

  • 数字孪生能源大数据云平台建设方案
  • WPSOffice引用的组件
  • 按键分区和非按键分区对窗口计算的影响
  • 2020年下半年 系统架构设计师 综合知识
  • 传感器与传感网 | 第一章:传感器与感知技术
  • 在Jupyter Notebook里面渲染pyecharts无法显示
  • 在 React 项目里下载 CSV 文件常见的两种方式
  • 【脑电分析系列】第15篇:脑电功能连接性与脑网络分析(二):Granger因果性、图论指标与复杂网络构建
  • SpringMVC 系列博客(一):基础概念与注解开发入门
  • AI+Playwright+Pytest 自动化测试方案:优势、劣势与实战融合
  • docker启动Nginx并配置SSL自动续期.md
  • OpenStack 学习笔记(三):存储与计算核心组件管理实践
  • Linux文件IO与文件系统深度解析:从系统调用到文件系统原理
  • 如何在 2025 年绕过 Cloudflare 人工检查?
  • 【pycharm】index-tts2:之三 :ubuntu24.04 体验tts demo
  • vivado中DDR4 仿真模型的获取
  • 《RocketMQ 2025 实战指南:从消息丢失 / 重复消费 / 顺序消费到事务消息,一篇搞定生产级问题(附完整代码)》
  • 十二、vue3后台项目系列——设置路由守卫,获取角色权限,获取角色路由列表、页面请求进度条
  • 6个AI论文网站排行,实测
  • Dioxus基础介绍和创建组件
  • 基于粒子群算法的山地环境无人机最短路径规划研究(含危险区域约束的三维优化方法)
  • ardupilot开发 --- 无人机数学模型与控制律分解 篇
  • 海外代理IP服务器平台测评,Tik Tok多账号运营稳定IP服务支持
  • 【面板数据】省及地级市农业新质生产力数据集(2002-2025年)
  • Linux的常用命令总结
  • Egg.js:企业级 Node.js 框架的优雅实践
  • vue中v-model绑定计算属性
  • 查看磁盘分区并新建一个分区,挂载分区
  • SQL Server到Hive:批处理ETL性能提升30%的实战经验
  • 【JavaScript 性能优化实战】第一篇:从基础痛点入手,提升 JS 运行效率