蓝桥杯之阶段考核
📖 Day 7:阶段考核 - 蓝桥杯官方模拟赛(限时 4 小时)
📖 一、如何高效完成模拟赛?
模拟赛是一种接近真实竞赛的训练方式。要高效完成模拟赛,需要掌握以下策略:
1. 赛前准备
✅ 环境搭建:确保 Java 开发环境、IDE(如 IntelliJ IDEA、Eclipse、VS Code)正常运行,输入输出调试正常。
✅ 熟悉常见模板:准备好 DFS、回溯、动态规划、位运算等常用算法模板,避免比赛时临时推导。
✅ 阅读题目速度:比赛时,快速理解题意,确定题目涉及的算法类型。
2. 赛时策略
📌 ① 先做简单题:先做 确定思路的题,比如基础遍历、贪心算法、双指针等题目。
📌 ② 观察数据规模:如果数据规模 ≤10^6,考虑 O(n) 或 O(n log n) 解法;如果 ≤100,考虑 O(n²) 解法;如果 ≤20,考虑回溯 + 剪枝。
📌 ③ 分析边界情况:比如 n=1、n=0、极端输入情况,防止 ArrayIndexOutOfBoundsException。
📌 ④ 超时优化:如果代码超时,优化时间复杂度(如 O(n²) → O(n log n)),或改用位运算、哈希表、前缀和等加速。
3. 赛后复盘
🔍 ① 查看错误代码:分析错误原因,如 索引越界、浮点精度、整数溢出、边界处理错误。
🔍 ② 记录思路:如果某题没做出来,找出 最优解法 并理解其时间复杂度。
🔍 ③ 归纳高频考点:整理本场比赛涉及的算法,找出自己薄弱的地方,强化训练。
📖 二、常见题型及解法
模拟赛一般包含以下几种类型的题目,我们来看几道典型题目的解法:
📌 1. 经典贪心题目:区间覆盖
题目描述
给定 n 个区间 [li, ri],选择最少数量的区间,使得区间 start 到 end 都被覆盖。
解题思路
- 先按 左端点排序,然后贪心地选择能覆盖更多区域的区间。
- 如果当前区间无法覆盖
start,返回-1,否则更新当前end。
代码实现
import java.util.*;public class IntervalCover {public static int minIntervals(int[][] intervals, int start, int end) {Arrays.sort(intervals, Comparator.comparingInt(a -> a[0])); // 按左端点排序int count = 0, curEnd = start, i = 0;while (curEnd < end) {int maxEnd = curEnd;while (i < intervals.length && intervals[i][0] <= curEnd) {maxEnd = Math.max(maxEnd, intervals[i][1]);i++;}if (maxEnd == curEnd) return -1; // 无法覆盖curEnd = maxEnd;count++;}return count;}public static void main(String[] args) {int[][] intervals = {{1, 3}, {2, 5}, {3, 6}, {5, 8}};System.out.println(minIntervals(intervals, 1, 8)); // 输出 2}
}
时间复杂度:O(n log n)(排序) + O(n)(遍历) = O(n log n)。
📌 2. 经典回溯题目:全排列
题目描述
给定一个不含重复数字的数组 nums,返回所有可能的全排列。
解题思路
- 使用 回溯 + 递归,每次选择一个数字加入排列,回溯时撤销选择。
代码实现
import java.util.*;public class Permutations {public static List<List<Integer>> permute(int[] nums) {List<List<Integer>> result = new ArrayList<>();backtrack(result, new ArrayList<>(), nums, new boolean[nums.length]);return result;}private static void backtrack(List<List<Integer>> result, List<Integer> tempList, int[] nums, boolean[] used) {if (tempList.size() == nums.length) {result.add(new ArrayList<>(tempList));return;}for (int i = 0; i < nums.length; i++) {if (!used[i]) {used[i] = true;tempList.add(nums[i]);backtrack(result, tempList, nums, used);tempList.remove(tempList.size() - 1);used[i] = false;}}}public static void main(String[] args) {int[] nums = {1, 2, 3};System.out.println(permute(nums));}
}
时间复杂度:O(n!),因为每个元素都会被排列。
📌 3. 经典动态规划题目:最长递增子序列(LIS)
题目描述
给定一个整数数组 nums,找到其中最长递增子序列的长度。
解题思路
- dp[i] 代表以 nums[i] 结尾的最长递增子序列长度。
- 对于每个
nums[i],遍历nums[j] (j < i),如果nums[j] < nums[i],则dp[i] = max(dp[i], dp[j] + 1)。
代码实现
import java.util.*;public class LongestIncreasingSubsequence {public int lengthOfLIS(int[] nums) {int n = nums.length, maxLen = 0;int[] dp = new int[n];Arrays.fill(dp, 1);for (int i = 1; i < n; i++) {for (int j = 0; j < i; j++) {if (nums[i] > nums[j]) {dp[i] = Math.max(dp[i], dp[j] + 1);}}maxLen = Math.max(maxLen, dp[i]);}return maxLen;}public static void main(String[] args) {LongestIncreasingSubsequence lis = new LongestIncreasingSubsequence();int[] nums = {10, 9, 2, 5, 3, 7, 101, 18};System.out.println("最长递增子序列长度: " + lis.lengthOfLIS(nums)); // 输出 4}
}
时间复杂度:O(n²),优化可用 O(n log n)(二分查找 + 贪心)。
📖 三、总结
模拟赛复盘要点
✅ 分析哪些题目做得快,哪些题目浪费时间
✅ 查找代码 bug,记录错误原因,避免在正式比赛时再犯
✅ 整理高频考点,如 DFS、动态规划、贪心、二分查找等
✅ 练习写代码的速度,争取 5-10 分钟内写完简单题,复杂题 30-40 分钟
📌 最后建议
- 多练习 模拟赛,适应比赛节奏。
- 限时训练,提高编程速度。
- 总结错题,优化解法,提高代码效率。
相关文章:
蓝桥杯之阶段考核
📖 Day 7:阶段考核 - 蓝桥杯官方模拟赛(限时 4 小时) 📖 一、如何高效完成模拟赛? 模拟赛是一种接近真实竞赛的训练方式。要高效完成模拟赛,需要掌握以下策略: 1. 赛前准备 ✅ 环…...
Python爬虫基础重要数据类型
重要数据类型 列表数据类型 在实际开发中,经常需要将一组(不只一个)数据存储起来,以便后边的代码使用。列表就是这样的一个数据结构。且列表是Python中最基本也是最常用的数据结构之一。什么是数据结构呢?通俗来讲&a…...
乐享数科:供应链金融—三个不同阶段的融资模式
供应链金融是与产业链紧密结合的融资模式,它主要体现在订单采购、存货保管、销售回款这三个不同的业务阶段,并针对这些阶段提供了相应的金融服务。以下是这三个阶段中主要的融资模式及其特点: 供应链金融融资模式主要分为以下几种࿱…...
【AI】openEuler 22.03 LTS SP4安装 docker NVIDIA Container Toolkit
NVIDIA Container Toolkit 打开网址 Unsupported distribution or misconfigured repository settings | NVIDIA Container Toolkit 为方便离线安装,先下载过来 wget https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo mk…...
【2025全网首发B站教程】YOLOv12训练数据集构建:标签格式转换-划分-YAML 配置 避坑指南 | 小白也能轻松玩转目标检测!
【2025全站首发】YOLOv12训练数据集构建:标签格式转换-划分-YAML 配置 避坑指南 | 小白也能轻松玩转目标检测! 文章目录 1. 数据集准备1.1 标签格式转换1.2 数据集划分1.3 yaml配置文件创建 2. 训练验证 1. 数据集准备 示例数据集下载链接:P…...
设计模式教程:中介者模式(Mediator Pattern)
中介者模式是一种行为型设计模式,它用于减少对象之间的直接依赖关系。通过引入一个中介者对象,所有对象的交互都通过中介者进行,而不是直接相互通信。这种模式的主要目的是减少对象之间的耦合,提升系统的灵活性和可维护性。 1. 定…...
编写dockercompose脚本,管理redis,activemq,mysql5.7
编写dockercompose脚本,管理redis,activemq,mysql5.7,mysql的root密码设置Duke2007,redis密码设置duke0591 Docker Compose 多服务编排脚本(安全增强版) yaml 复制 services: # # MySQL 5.7 服务配置 #…...
【编程语言】委托与函数指针
委托与函数指针的相似之处: 指向方法:C# 的委托和 C 的函数指针都可以用来指向一个方法或函数。调用方法:它们都可以通过引用(委托或函数指针)来调用指向的方法。 委托与函数指针的主要区别: 类型安全&am…...
基于vue和微信小程序的校园自助打印系统(springboot论文源码调试讲解)
第3章 系统设计 3.1系统功能结构设计 本系统的结构分为管理员和用户、店长。本系统的功能结构图如下图3.1所示: 图3.1系统功能结构图 3.2数据库设计 本系统为小程序类的预约平台,所以对信息的安全和稳定要求非常高。为了解决本问题,采用前端…...
数字后端实现之Innovus中open net原因解析及解决方案
数字IC后端设计实现Innovus中我们经常会碰到如下的WARNING警告信息。这个log是在route或ECO Route阶段报的。这个WARNING必须要看,因为这里是报告当前设计存在open的net,即某些pin只有逻辑连接,而没有实际的物理连接。 这里正常工具应该报ERR…...
MATLAB基础学习相关知识
MATLAB安装参考:抖音-记录美好生活 MATLAB基础知识学习参考:【1小时Matlab速成教程-哔哩哔哩】 https://b23.tv/CnvHtO3 第1部分:变量定义和基本运算 生成矩阵: % 生成矩阵% 直接法% ,表示行 ;表示列 a [1,2,3;4,5,6;7,8,9];%…...
Mac系统下使用Docker快速部署MaxKB:打造本地知识库问答系统
随着大语言模型的广泛应用,知识库问答系统逐渐成为提升工作效率和个人学习的有力工具。MaxKB是一款基于LLM(Large Language Model)大语言模型的知识库问答系统,支持多模型对接、文档上传和自动爬取等功能。本文将详细介绍如何在Ma…...
RT-Thread+STM32L475VET6——icm20608传感器
文章目录 前言一、板载资源二、具体步骤1.打开CubeMX进行配置1.1 使用外部高速时钟,并修改时钟树1.2 打开I2C3,参数默认即可(I2C根据自己需求调整)1.3 打开串口1.4 生成工程 2. 添加icm20608软件包3. 使能传感器,打开动态链接库4.…...
【信息系统项目管理师-案例真题】2022下半年案例分析答案和详解
更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 试题一(24分)【问题1】(6分)【问题2】(10分)【问题3】(8分)试题二(26分)【问题1】(8分)【问题2】(8分)【问题3】(4分)【问题4】(6分)试题三(25分)【问题1】(12分)【问题2】(7分)【问题…...
3D机器视觉工业3D图像格式常见的格式
工业3D图像格式主要用于存储和交换三维模型数据,常见的格式包括: STL (Stereolithography) 用途: 3D打印和快速成型。 特点: 存储三角面片信息,文件较小,但不包含颜色和材质数据。STEP (Standard for the Exchange of Product Data) 用途: CAD数据交换。 特点: 支持几何、拓…...
SkyWalking集成Kafka实现日志异步采集经验总结
SkyWalking日志异步采集架构 【重点知识】 1、【Agent】kafka-reporter-plugin-x.x.x.jar包放plugins目录后必走kafka(kafka没有正确配置就会报错) 2、【Agent】异步如不开启数据压缩,日志数据较大,pod多、业务大时容易造成网络…...
Java知识点——IO流
目录 一、IO流基础概念 二、常见的IO流类 三、字符流 1.字符输入流(Reader)与字符输出流(Writer) 2.常用实现类 3.实例 四、字节流 1.字节输入流(InputStream)与字节输出流(OutputStrea…...
uniapp h5端和app端 使用 turn.js
前提:添加页后,添加页与当前页会重叠在一起,不知道为什么,没有找到解决办法 1.h5端 <template><view class"container"><view id"flipbook"><view class"page page1">Page 1</view><view class"page pag…...
使用大语言模型(Deepseek)构建一个基于 SQL 数据的问答系统
GitHub代码仓库 架构 从高层次来看,这些系统的步骤如下: 将问题转换为SQL查询:模型将用户输入转换为SQL查询。 执行SQL查询:执行查询。 回答问题:模型根据查询结果响应用户输入。 样本数据 下载样本数据…...
时间转换(acwing)c/c++/java/python
读取一个整数值,它是工厂中某个事件的持续时间(以秒为单位),请你将其转换为小时:分钟:秒来表示。 输入格式 输入一个整数 NN。 输出格式 输出转换后的时间表示,格式为 hours:minutes:second…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
Debian系统简介
目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版ÿ…...
大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...
