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

算法题(183):质量检测

审题:

本题需要我们求出Q序列并逐行打印

思路:
首先我们需要知道Qm是什么意思:

根据题意,m是题目给定的值,而Qm表示一段索引1~m的区间的质量最差值,Qm+1表示索引2~m+1的区间

综上所述,其实题目就是要我们求每段长度为m的区间的最差质量值并输出

方法一:滑动窗口

我们可以利用双端队列来解决滑动窗口的求最值题目

解题:

#include<iostream>
#include<deque>
using namespace std;
const int N = 1e5 + 10;
int a[N];
int n, m;
int main()
{cin >> n >> m;for (int i = 1; i <= n; i++){cin >> a[i];}//查找最差质量deque<int> q;//存下标for (int i = 1; i <= n; i++){while (q.size() && a[q.back()] >= a[i]) q.pop_back();q.push_back(i);if (q.back() - q.front() + 1 > m) q.pop_front();if (i >= m) cout << a[q.front()] << endl;}return 0;
}

注意:

1.队列存储的是下标

2.使用队列相关接口的时候需要先判断队列是否为空

3.要利用存储的下标来判断最前面出现的产品是否还在窗口中

4.最终输出的是产品的质量值,所以要根据队列中存储的索引映射回a数组输出

P2251 质量检测 - 洛谷

http://www.xdnf.cn/news/1267363.html

相关文章:

  • Java异常:认识异常、异常的作用、自定义异常
  • 扣证件照要点
  • 全栈:JDBC驱动版本和SQLserver版本是否有关系?怎么选择JDBC的版本号?
  • 数据结构—二叉树及gdb的应用
  • WebGIS视角下基孔肯雅热流行风险地区分类实战解析
  • 开源智能手机安全相机推荐:Snap Safe
  • Python如何将图片转换为PDF格式
  • PDF编辑工具,免费OCR识别表单
  • 论文阅读-ZeroDCE和ZeroDCE++
  • 【Spring Boot 快速入门】八、登录认证(二)统一拦截
  • elementui input无法输入问题
  • 202506 电子学会青少年等级考试机器人一级理论综合真题
  • 【n8n教程笔记——工作流Workflow】文本课程(第二阶段)——5 自动化业务工作流——0 用例 (Use case)
  • 阿里云 ECS 怎么用 nginx 部署80端口多个网站
  • 大语言模型提示工程与应用:前沿提示工程技术探索
  • Baumer高防护相机如何通过YoloV8深度学习模型实现输电线路塔电缆检测分割(C#代码UI界面版)
  • 图片拆分工具,自定义宫格切割
  • AI 算法优化实战指南:从理论到部署的全流程优化策略
  • Python樱花树
  • 创业者焦虑与转型决策分析
  • Kafka服务端NIO操作原理解析(二)
  • 通用AGI到来,记忆仍需要一点旧颜色
  • Express中间件和路由及响应方法
  • 【阿里巴巴大数据实践之路学习记录】第十章-维度设计
  • 【Linux】Socket编程——UDP版
  • redis8.0.3部署于mac
  • ELK常见的问题
  • 如何在linux(CentOS7)上面安装 jenkins?
  • AI_RAG
  • C# 使用iText获取PDF的trailer数据