蓝桥杯---附近最小(典型的滑动窗口类型问题)

题目链接:附近最小

import java.util.ArrayDeque;
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改public class Main {static int n;static int[] a;static int k;public static void main(String[] args) {Scanner scanner=new Scanner(System.in);n=scanner.nextInt();a=new int[n+1];for(int i=1;i<=n;i++){a[i]=scanner.nextInt();}k=scanner.nextInt();ArrayDeque<Integer> q=new ArrayDeque<>();//双向队列//维持队列的单调性,最小的在队头for(int i=1;i<=k+1;i++){while(!q.isEmpty()&&i<n&&a[i]<a[q.peekLast()]){q.removeLast();}q.addLast(i);}int[] mi=new int[n+1];//表示第i处的相应区间的最小值mi[1]=q.peekFirst();for(int i=2;i<=n;i++){//先看左边界有没有超出if(!q.isEmpty()&&q.peekFirst()<i-k&&i-k>0){q.removeFirst();}while(!q.isEmpty()&&i+k<=n&&a[i+k]<=a[q.peekLast()]){q.removeLast();}//这个地方出过错,着重标记//后面添加的元素都是i+k,而不是iif(i+k<=n){q.addLast(i+k);}mi[i]=q.peekFirst();}for(int i=1;i<=n;i++){System.out.print(a[mi[i]]+" " );}}
}

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

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

相关文章

vue - - - - 数据刷新试图不刷新?是不外层有个table?

<table> // ...<customCell :_dataSourcedataSource/>// ... </table>dataSource 更新时&#xff0c;自定义组件对应的是图没有更新 解决办法&#xff1a; 给table加一个变化的key <table key"randomKey"> // ...<customCell :_dataSou…

OpenHarmony开源项目—工程管理

DevEco Studio的基本使用&#xff0c;请参考DevEco Studio使用指南。本章主要介绍如何使用DevEco Studio进行多设备应用开发。 说明&#xff1a; 本章的内容基于DevEco Studio 3.1.1 Release版本进行介绍&#xff0c;如您使用DevEco Studio其它版本&#xff0c;可能存在文档与产…

微信小程序(五十八)分步表单多页面传值

注释很详细&#xff0c;直接上代码 新增内容&#xff1a; 1.分步表单传值 2.伪数据生成 源码&#xff1a; app.json {"pages": ["pages/index/index","pages/building/building","pages/room/room","pages/logs/logs"],&qu…

【项目经验】Redis Sentinel从工程中下线并对业务迁移-进行中

一、背景&#xff1a; 某天&#xff0c;接到DBA通知&#xff0c;Redis sentinel 只支持到3.2.X(这个命题有问题&#xff0c;往下翻&#xff0c;见彩蛋)&#xff0c;为节省运维成本&#xff0c;提升运维效率&#xff0c;决定将工程中使用的Redis sentinel下线&#xff0c;都使用…

关于类和对象超级初级小白知识

下面的内容只是一小部分&#xff0c;在整个面向对象的知识中并不完整&#xff0c;用于记忆和梳理 目录 前言&#xff1a;类和对象是什么&#xff1f; 一、定义类 1.如何定义类 2.类的注意事项 二.类的实例化 1.创建对象的基础知识 2.如何创建对象 3.实例化举例 4.访问对象…

【Python】python实现决策树算法和贝叶斯算法(附源代码)

使用一种你熟悉的程序设计语言&#xff0c;实现&#xff08;1&#xff09;贝叶斯算法和&#xff08;2&#xff09;决策树算法 目录 1、贝叶斯算法2、决策树算法3、两种算法比较 1、贝叶斯算法 import pandas as pd import numpy as np from sklearn.model_selection import t…

蓝桥集训之有序分数

蓝桥集训之有序分数 核心思想&#xff1a;Stern-Brocot Tree 遍历一个区间内的所有最简分数 – – 区间两端分数 分子相加/分母相加 递归 #include<iostream>using namespace std;int n;void dfs(int a,int b,int c,int d) //ac分子 bd分母{if(bd>n) return;dfs(a…

算法-DFS/BFS-XMUOJ提瓦特细胞探秘

题目 思路 这道题目描述了一个矩阵中由数字1至9组成的细胞&#xff0c;这些细胞按照特定规则相互连接。具体规则是&#xff0c;只有当细胞上下左右紧邻的数字同样属于1至9时&#xff0c;它们才会被视为同一细胞的一部分。 解决这个问题的关键在于如何遍历整个矩阵&#xff0c…

蓝桥杯C++大学B组一个月冲刺记录2024/3/13

蓝桥杯C大学B组一个月冲刺记录2024/3/13 规则:每日三题 向日葵的花语是说不出的爱恋 不过今天有点水题了 1.有序分数 给定一个整数 N&#xff0c;请你求出所有分母小于或等于 N&#xff0c;大小在 [0,1] 范围内的最简分数&#xff0c;并按从小到大顺序依次输出。 这个题在被划…

灵雀云开源ALB ,为云原生 Kubernetes 网关领域再添新星

ALB (Another Load Balancer)是一款由灵雀云倾力打造的云原生 Kubernetes 网关&#xff0c;近日&#xff0c;正式宣布将其在Github上开源。ALB 的诞生&#xff0c;旨在满足日益增长的云原生应用需求&#xff0c;为开发者提供更为强大和灵活的网关解决方案。 ALB 支持在一个集群…

Oracle PL/SQL Programming 第9章:Numbers 读书笔记

总的目录和进度&#xff0c;请参见开始读 Oracle PL/SQL Programming 第6版 本章谈3点&#xff1a; 可使用的数字数据类型如何在数字和文本间转换PL/SQL 内置数值函数 Numeric Datatypes NUMBER&#xff1a;平台无关的实现&#xff0c;适合处理货币金额PLS_INTEGER 和 BINA…

前端面试题汇总

基础面试题 1.new 操作符做了那些事 function Fun(name){this.name name } Fun.prototype.sayHi funtion(){console.log(this.name) }function mockCreate(fn, ...args){let obj Object.create({}) // 创建一个空对象Object.setPrototypeOf(obj, fn.prototype) // 空对象…

C语言学习笔记day4

1. putchar 1.1 功能: 在终端输出一个字符 注意: 1.只能打印 一个字符 2.只能打印字符 示例: putchar(a); putchar(100); putchar(a-32); 2. getchar 2…

day02vue学习

day02 一、今日学习目标 1.指令补充 指令修饰符v-bind对样式增强的操作v-model应用于其他表单元素 2.computed计算属性 基础语法计算属性vs方法计算属性的完整写法成绩案例 3.watch侦听器 基础写法完整写法 4.综合案例 &#xff08;演示&#xff09; 渲染 / 删除 / 修…

速卖通批量注册买家号安全吗?怎么弄?

在速卖通等跨境电商平台上&#xff0c;买家号的注册与养号过程繁琐而复杂。传统的手动注册方式效率低下&#xff0c;难以满足大规模的需求。而跨境智星系统凭借其全自动化的功能&#xff0c;能够轻松实现买家号的批量注册与养号&#xff0c;大大提高了效率。 使用跨境智星系统进…

200W年薪的大佬 随手丢给我“Spring速成宝典”看完这些知识点直接定级P7

面试官&#xff1a;答的很好&#xff0c;最后一个问题&#xff1a;如果没有Spring&#xff0c;你打算怎么开展工作&#xff1f; 这个思考了几分钟后&#xff0c;程序员小建是这么回答的&#xff1a;Spring的核心源码&#xff0c;比如&#xff1a;IOC、AOP、Spring事务、MVC原理…

Explain详解与索引优化最佳实践

Explain工具介绍 使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈 在select语句之前增加explain关键字,MySQL会在查询前设置一个标记,执行查询会返回执行计划的信息,而不是执行这条SQL 注意: 如果from中包含子查询,仍会执行该子查询,将结果…

借助知识图谱和Llama-Index实现基于大模型的RAG

背景 幻觉是在处理大型语言模型&#xff08;LLMs&#xff09;时常见的问题。LLMs生成流畅连贯的文本&#xff0c;但经常产生不准确或不一致的信息。防止LLMs中出现幻觉的一种方法是使用外部知识源&#xff0c;如提供事实信息的数据库或知识图谱。 矢量数据库和知识图谱使用不…

【vim 学习系列文章 14 -- vim 注释神器 vim-commentary 插件 】

文章目录 vim-commentary插件 vim-commentary插件 Vim中的vim-commentary插件是一个流行的注释工具&#xff0c;可以使用该工具快速添加或删除代码注释。默认情况下&#xff0c;该插件根据文件类型来确定注释格式。对于大多数编程语言&#xff0c;它会使用相应的单行注释符号。…

springboot/ssm滑雪场管理系统Java滑雪溜冰馆预约管理系统web

springboot/ssm滑雪场管理系统Java滑雪溜冰馆预约管理系统web 基于springboot(可改ssm)vue项目 开发语言&#xff1a;Java 框架&#xff1a;springboot/可改ssm vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff1a;…