【冲刺蓝桥杯的最后30天】day4
大家好😃,我是想要慢慢变得优秀的向阳🌞同学👨💻,断更了整整一年,又开始恢复CSDN更新,从今天开始更新备战蓝桥30天系列,一共30天,如果对你有帮助或者正在备战蓝桥杯的小伙伴可以支持一下哦!~不能说肯定是干货,但会让你有所收获!💓💓💓
课又多,讲的又水,纯纯恶心人,不去还随机点名+位置签到,这就是我前18岁一直期盼的大学生活吗😭😭😭既浪费想真正学习的人的时间,又影响不想学习人家玩手机的体验😭😭😭
🍭🍭我们总是在生活扮演各种角色,却唯独很少扮演自己🍭🍭
山 - 蓝桥云课 (lanqiao.cn)
思路:暴力+双指针,因为有限制的回文判定,需要在判断回文的条件下再单独加些条件,因为暴力+数据太大,导致编译器要跑一段时间,很正常,比赛的时候遇到这种情况也不要慌,去看或者做下一道题,在五分钟内能跑完就是合格的代码!这段代码要跑三四分钟的,不要急。
public static void main(String[] args) {int ans = 0;for (int i = 2022; i <= 2022222022; i++) {//考虑操作一长段整数的时候转换成字符串再转换成字符数组是非常好用简单的一个思路//当然这段思路不是高效快速的,但一定好想char[] s = (i+"").toCharArray();int l = 0, r = s.length-1;boolean flag = true;while (l < r){//判断既是回文的同时就要让人家左右看来都是递增的,这个段代码不用考虑奇偶//我看CSDN很多题解都是一模一样的,没有什么非常新颖的,只能自己把自己想法写下来if(s[l+1] < s[l] || s[r-1] < s[r] || s[l] != s[r]){flag = false;break;}l++;r--;}if(flag) ans++;}System.out.println(ans);//3138}最少刷题数 - 蓝桥云课 (lanqiao.cn)
思路:这道题是非常经典的前缀和+二分,常见的考法,比较基本也比较重要的两个算法知识,务必要掌握好,才能更好有希望冲击省一。具体细节代码上都有标注,大概就是要创建一个数组用来存储每个刷题量都有多少学生人数,并求出这个数组的前缀和,之后循环判断每一个学生刷题数是否已经满足条件用这个前缀和数组O1来查找判断,如果不满足就用二分去查找这个前缀和数组找到左边界,刷题数比他少的学生人数刚好大于等于刷题量比他多的学生人数,得到这个刷题数后减去目前已经刷的,得到还需要刷多少道题才能满足题目条件。
static int N = 100010;static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));static PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));//a存储每个同学刷题的数量,b存储的是每个刷量的个数对应学生有多少人static int[] a = new int[N];static int[] b = new int[N];public static void main(String[] args) throws IOException {String[] s = br.readLine().split(" ");int n = Integer.parseInt(s[0]);s = br.readLine().split(" ");for (int i = 0; i < n; i++) {a[i] = Integer.parseInt(s[i]);//存储下标为刷题数的学生是多少,对应++b[a[i]]++;}//对刷题数进行前缀和,可以知道刷题数的时候,等于,小于,大于该刷题数的学生是多少人//一共N最大就是1e5,我们不知道具体每个学生刷多少道题,只有个范围,只能用最大值求前缀和了for (int i = 1; i <= 100000; i++) {b[i] += b[i - 1];}//求每个学生至少还要刷多少道题可以满足 比自己刷题多的学生数 小于等于 刷题比他少的学生数for (int i = 0; i < n; i++) {//前面表示刷题量比自己多的学生 后面表示刷题量比自己少的学生,因为学生可以刷0道题,如果刷题数比自己小的学生都是刷0道题就会导致a[i-]-1为负数//b[-1]就会越界导致报错,所以要最后和0取个最大值//这个if条件就是刷题数比他少的学生数量大于等于刷题量比他多的学生,此时已经满足条件,直接输出就行了,该学生不用再刷题了if (b[100000] - b[a[i]] <= b[Math.max(0, a[i]-1)]) {out.print(0 + " ");continue;}//二分b数组找一个点,该点满足左边刷题数少的学生 刚好大于等于 右边刷题比他少的学生int l = a[i] + 1, r = 100000;while (l < r) {int mid = (l+r)>>1;//左边表示刷题数小于a[mid]的人用b[mid-1]表示,因为第一个if没进去,才到了这个循环里面,那么每次用mid查找的时候,自己就是属于刷题数小于a[mid]的人//因为要求的是数量大小的比较,自己这个时候已经被抽出去了,看要刷多少题才能插入到满足条件的地方,所以要算(左边刷题数少的学生 刚好大于等于 右边刷题比他少的学生)//的人数的时候,要把自己减掉才可以,所以左边刷题数少的学生表示为b[mid]-1if (b[mid - 1] - 1 >= b[100000] - b[mid]) r = mid;else l = mid + 1;}//还要刷多少道题out.print((r - a[i]) + " ");}out.flush();}
相关文章:
【冲刺蓝桥杯的最后30天】day4
大家好😃,我是想要慢慢变得优秀的向阳🌞同学👨💻,断更了整整一年,又开始恢复CSDN更新,从今天开始更新备战蓝桥30天系列,一共30天,如果对你有帮助或者正在备…...
spring boot actuator 动态修改日志级别
1 日志级别 Spring Boot Actuator包括在运行时查看和配置应用程序日志级别的功能。您可以查看整个列表,也可以查看单个记录器的配置,该配置由显式配置的日志级别和日志框架给出的有效日志级别组成。这些级别可以是: TRACEDEBUGINFOWARNERRORFATALOFFnu…...
兴达易控Modbus转Profinet网关连接1200Profinet转modbus接三菱A800变频器案例
下面介绍A800 变频器通过兴达易控modbus转profinet网关,使1200plc无需编程实现Profinet转modbus协议转换,把modbus变频器轻松组网 网络拓扑如下图 打开博图组态加载GSD文件,modbus转profinet网关从站接口接入到1200PLC上 配置modbus转profine…...
「SAP ABAP」OPEN SQL(四)【FROM语句】
💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后…...
一文吃透 SpringMVC 中的转发和重定向
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
Hbase操作命令
目录 创建表,表中有两个列族 baseinfo, schoolinfo 查看指定表全名空间中的表 查看表描述 禁用/启用 查看是否启用/禁用 删除表 注意,首先要将删除的表设置为禁用状态才可以删除,否则会报错 新增列族 删除列族 更改列族存储版本的限制 增…...
1>LINK : fatal error LNK1104: cannot open file ‘libconvtname.obj‘
我自己最后找到问题原因是: 引用的库名称没有.lib,只有libconvtname。 改成完整的libconvtname.lib即可。 以下是chatGPT的回答 The error message "fatal error LNK1104: cannot open file libconvtname.obj" usually occurs when Visual S…...
数据结构——链表OJ题目讲解(1)
作者:几冬雪来 时间:2023年3月7日 内容:数据结构链表OJ题目讲解 题目来源:力扣和牛客 目录 前言: 刷题: 1.移出链表元素: 2.链表的中间结点: 3. 链表中倒数第k个结点࿱…...
LeetCode_二分搜索_困难_154.寻找旋转排序数组中的最小值 II
目录1.题目2.思路3.代码实现(Java)1.题目 已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组。例如,原数组 nums [0,1,4,4,5,6,7] 在变化后可能得到: 若旋转 4…...
面向对象设计模式:创建型模式之建造者模式
一、引入 Build:建造和构建具有建筑结构的大型物体 建楼:打牢地基、搭建框架、然后自下而上一层层盖起来。构建物体:通常需要先建造组成这个物体的各个部分,然后分阶段把它们组装起来 二、建造者模式 2.1 Intent 意图 Separate…...
集成学习boosting、bagging、stacking
目录 一、介绍 二、三种架构学习 (1)boosting (2)bagging (3)stacking 一、介绍: 对于单个模型来说很难拟合复杂的数,模型的抗干扰能力较低,所以我们希望可以集成多…...
数据模型(上):模型分类和模型组成
1.模型分类 数据模型是一种由符号、文本组成的集合,用以准确表达信息景观,达到有效交流、沟通的目的。数据建模者要求能与来自不同部门,具有不同技术背景,不同业务经验,不同技术水平的人员交流、沟通。数据建模者要了解每个人员的观点,并通过反馈证明理解无误,最终作…...
郑州轻工业大学2022-2023(2) 数据结构题目集 - ZZULI
6-1 线性表元素的区间删除 6-1 线性表元素的区间删除 分数 20 全屏浏览题目 切换布局 作者 DS课程组 单位 浙江大学 给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素。删除后表中剩余元素保持顺序存储,并且相对位置不能改变…...
【Python语言基础】——Python MySQL Drop Table
Python语言基础——Python MySQL Drop Table 文章目录Python语言基础——Python MySQL Drop Table一、Python MySQL Drop Table一、Python MySQL Drop Table 删除表 您可以使用 “DROP TABLE” 语句来删除已有的表: 实例 删除 “customers” 表: import…...
2023美团面试真题
面试前需要准备: 1. Java 八股文:了解常考的题型和回答思路; 2. 算法:刷 100-200 道题,记住刷题最重要的是要理解其思想,不要死记硬背,碰上原题很难,但 大多数的解题思路是相通的…...
【微信小程序开发全流程】篇章0:基于JavaScript开发的校园综合类微信小程序的概览
基于JavaScript开发的校园综合类微信小程序的概览 本文仅供学习,未经同意请勿转载 一些说明:上述项目来源于笔者我本科大三阶段2019年电子设计课程项目,在这个项目中,我主要是负责的部分有前端,前后端的对接…...
如何分析sql性能
1、前言 提到sql性能分析,可能都会想到explain,它在mysql里被称为执行计划,也就是说可以通过该命令看出mysql在通过优化器分析之后如何执行sql。mysql的内置优化器十分强大,它能帮我们把sql再次优化,以最低的成本去执…...
市场营销书籍推荐:《经理人参阅:市场营销》
要学好市场营销有什么好方法?答案是看书!比起碎片化地去阅读一些文章或看一些相关视频,读书来得更实在些。倘若能静下心来好好读上一本系统性的市场营销书籍,学好营销管理将不会再是一件难事。然而,问题的关键是&#…...
WPF 控件专题 MediaElement控件详解
1、MediaElement 介绍 MediaElement:表示包含音频和/或视频的控件。 MediaOpened在引发事件之前,ActualWidth控件将ActualHeight报告为零,因为媒体内容用于确定控件的最终大小和位置。 对于仅音频内容,这些属性始终为零。 对于固…...
基于SpringBoot+SpringCloud+Vue前后端分离项目实战 --开篇
本文目录前言做项目的三大好处强强联手(天狗组合)专栏作者简介专栏的优势后端规划1. SpringBoot 和 SpringCloud 的选择2. Mybatis 和 MybatisPlus 和 JPA 的选择3. MySQL 和 Mongodb 的选择4. Redis 和 RocketMQ5. 后端规划小总结后端大纲提前掌握的知识点一期SpringBoot二期S…...
网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...
YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
站群服务器的应用场景都有哪些?
站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...
