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

蓝桥杯第 23 场 小白入门赛

一、前言

好久没打蓝桥杯官网上的比赛了,回来感受一下,这难度区分度还是挺大的

二、题目总览

三、具体题目

3.1 1. 三体时间【算法赛】

思路

额...签到题

我的代码

// Problem: 1. 三体时间【算法赛】
// Contest: Lanqiao - 第 23 场 小白入门赛
// URL: https://www.lanqiao.cn/problems/20058/learning/?contest_id=224
// Memory Limit: 256 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include<bits/stdc++.h>
using i64 = long long;
using u64 = unsigned long long;
using u32 = unsigned;
using pii = std::pair<int,int>;
constexpr int N = 1e5+5,M = 1e6+5,INF = 0x3f3f3f3f;
#define pb emplace_back
#define all(v) v.begin(),v.end()void solve(){std::cout << 999*26/24 << ' ' << 999*26%24 << '\n';
}int main(){std::cin.tie(nullptr)->sync_with_stdio(false);int tt = 1;// std::cin >> tt;for(int ti = 0;ti<tt;++ti){solve();}return 0;
}

3.2 2. 存储晶体【算法赛】

思路

直接平方判断大小就行了

我的代码

// Problem: 2. 存储晶体【算法赛】
// Contest: Lanqiao - 第 23 场 小白入门赛
// URL: https://www.lanqiao.cn/problems/20056/learning/?contest_id=224
// Memory Limit: 256 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include<bits/stdc++.h>
using i64 = long long;
using u64 = unsigned long long;
using u32 = unsigned;
using pii = std::pair<int,int>;
constexpr int N = 1e5+5,M = 1e6+5,INF = 0x3f3f3f3f;
#define pb emplace_back
#define all(v) v.begin(),v.end()void solve(){int a,b;std::cin >> a >> b;int n;std::cin >> n;while(n--){int c;std::cin >> c;std::cout << (c*c<=a*a+b*b?"YES\n":"NO\n");}
}int main(){std::cin.tie(nullptr)->sync_with_stdio(false);int tt = 1;// std::cin >> tt;for(int ti = 0;ti<tt;++ti){solve();}return 0;
}

3.3 3. 屏蔽信号【算法赛】

思路

简单的类gcd的模拟题

我的代码

// Problem: 3. 屏蔽信号【算法赛】
// Contest: Lanqiao - 第 23 场 小白入门赛
// URL: https://www.lanqiao.cn/problems/20057/learning/?contest_id=224
// Memory Limit: 256 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include<bits/stdc++.h>
using i64 = long long;
using u64 = unsigned long long;
using u32 = unsigned;
using pii = std::pair<int,int>;
constexpr int N = 1e5+5,M = 1e6+5,INF = 0x3f3f3f3f;
#define pb emplace_back
#define all(v) v.begin(),v.end()void solve(){i64 a,b;std::cin >> a >> b;if(a<b) std::swap(a,b);int cnt = 0;while(b){i64 tmp = a-b;a = tmp;if(a<b) std::swap(a,b);++cnt;}std::cout << cnt << '\n';
}int main(){std::cin.tie(nullptr)->sync_with_stdio(false);int tt = 1;std::cin >> tt;for(int ti = 0;ti<tt;++ti){solve();}return 0;
}

3.4 4. 掩体计划【算法赛】

思路

题目要求是找到分支次数最小的叶子结点(起爆装置)的分支次数

我的代码

// Problem: 4. 掩体计划【算法赛】
// Contest: Lanqiao
// URL: https://www.lanqiao.cn/problems/20053/learning/?contest_id=224
// Memory Limit: 256 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include<bits/stdc++.h>
using i64 = long long;
using u64 = unsigned long long;
using u32 = unsigned;
using pii = std::pair<int,int>;
constexpr int N = 1e5+5,M = 1e6+5,INF = 0x3f3f3f3f;
#define pb emplace_back
#define all(v) v.begin(),v.end()int n,m;
std::vector<std::vector<int>> edges(N);
std::vector<int> f(N);
std::vector<int> bomb;void bfs(){std::queue<int> q;q.emplace(1);while(!q.empty()){auto t = q.front();q.pop();if(edges[t].size()>1){++f[t];}for(const auto&to:edges[t]){if(!f[to]){f[to] = f[t];q.emplace(to);}}}
}void solve(){std::cin >> n;for(int i = 0;i<n-1;++i){int u,v;std::cin >> u >> v;edges[u].pb(v);// edges[v].pb(u);}std::cin >> m;while(m--){int t;std::cin >> t;bomb.pb(t);}bfs();int ans = INF;for(const auto &b:bomb){ans = std::min(ans,f[b]);}std::cout << ans << '\n';
}int main(){std::cin.tie(nullptr)->sync_with_stdio(false);int tt = 1;// std::cin >> tt;for(int ti = 0;ti<tt;++ti){solve();}return 0;
}

3.5 5. 智商检测【算法赛】

思路

线性dp,dp[i][j] 保存的是从前i个元素中删除j个元素得到的最大 gcd值,状态转移主要是考虑是否删除第i个元素,另外要注意的是i和j也存在限制关系

题解代码

// Problem: 5. 智商检测【算法赛】
// Contest: Lanqiao - 第 23 场 小白入门赛
// URL: https://www.lanqiao.cn/problems/20055/learning/?contest_id=224
// Memory Limit: 256 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
constexpr int N = 1e5 + 10;
int n, k;
int a[N];
#define gcd std::__gcd
int main(){std::cin.tie(nullptr)->sync_with_stdio(false);std::cin >> n >> k;for(int i = 1;i<=n;++i){std::cin >> a[i];}std::vector<std::vector<int>> dp(n+1,std::vector<int>(k+1,0));// dp[i][j] 从前i个元素中删除j个元素, 得到的最大 gcdfor(int i = 1;i<=n;++i){dp[i][0] = gcd(dp[i-1][0],a[i]); // 初始化}for(int i = 1;i<=n;++i){for(int j = 1; j<=std::min(i,k);++j){if(i-1>=j) dp[i][j] = gcd(dp[i-1][j],a[i]);//可以不删, 即选择 a[i]dp[i][j] = std::max(dp[i-1][j-1],dp[i][j]);//删去 a[i], 并从前i-1个中选择删除j-1个元素}}std::cout << dp[n][k] << '\n';return 0;
}

3.6 6. 高能粒子【算法赛】

思路

看看大佬的思路

题解代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1000005;
ll ax[N];
ll ay[N];
struct node{ll x;ll posi;
}b[N];
bool cmp(node a,node b){return a.x<b.x;
}
ll t[N];
int main(){int n;scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%lld %lld",&ax[i],&ay[i]);    }int m;scanf("%d",&m);for(int i=1;i<=m;i++){scanf("%lld",&b[i].x);b[i].posi=i;}sort(b+1,b+1+m,cmp);for(int i=1;i<=n;i++){t[i]=ax[i]*b[1].x+ay[i];}sort(t+1,t+1+n);ll ans1=t[(n+1)/2];for(int i=1;i<=n;i++){t[i]=ax[i]*b[m].x+ay[i];}sort(t+1,t+1+n);ll ans2=t[(n+1)/2];if(ans1>ans2){printf("%lld ",b[1].posi);printf("%lld",ans1);}else{printf("%lld ",b[m].posi);printf("%lld",ans2);}return 0;
}

相关文章:

蓝桥杯第 23 场 小白入门赛

一、前言 好久没打蓝桥杯官网上的比赛了&#xff0c;回来感受一下&#xff0c;这难度区分度还是挺大的 二、题目总览 三、具体题目 3.1 1. 三体时间【算法赛】 思路 额...签到题 我的代码 // Problem: 1. 三体时间【算法赛】 // Contest: Lanqiao - 第 23 场 小白入门赛 …...

rest-assured multiPart上传中文名称文件,文件名乱码

rest-assured是一个基于java语言的REST API测试框架&#xff0c;在使用rest-assured的multipart 上传文件后&#xff0c;后端获取的文件名称乱码。截图如下&#xff1a; 原因是rest-assured multipart/form-data默认的编码格式是US-ASCII&#xff0c;需要设置为UTF-8。 Befo…...

CSFramework.EF高级应用: ASP.NETCore/WebApi使用动态代理技术创建多个IDatabase数据库实例

通过DI依赖注入IDatabase扩展接口&#xff0c;在.NET项目中使用多个数据库实例 目录 内容简介创建数据库扩展接口&#xff08;继承IDatabase接口&#xff09;注入IDatabase扩展接口 AddDatabase 扩展方法UseDatabase 扩展方法数据库配置文件 appsettings.json 配置文件Databas…...

神经网络入门实战:(九)分类问题 → 神经网络模型搭建模版和训练四步曲

(一) 神经网络模型搭建官方文档 每一层基本都有权重和偏置&#xff0c;可以仔细看官方文档。 pytorch 官网的库&#xff1a;torch.nn — PyTorch 2.5 documentation Containers库&#xff1a;用来搭建神经网络框架&#xff08;包含所有的神经网络的框架&#xff09;&#xff1b…...

Unity网络框架对比 Mirror|FishNet|NGO

在Unity中制作非单机项目常用的免费网络框架&#xff0c;这里选取了三款比较火的网络框架&#xff0c;Mirror、FishNet和Netcode for GameObject(NGO)。 比较了最常用的免费网络解决方案。可能还有值得探索的付费选项。您需要对此进行自己的研究。数据表格更新日志截止到&#…...

深入了解阿里云 OSS:强大的云存储解决方案

在现代互联网应用中&#xff0c;数据存储是一个不可忽视的环节。随着数据量的不断增长&#xff0c;传统的存储方式已经无法满足高速、低成本、大容量的需求。阿里云 OSS&#xff08;对象存储服务&#xff09;作为一种高性能、低成本且具备高度扩展性的云存储服务&#xff0c;已…...

ansible使用说明

将安装包拷贝到主控端主机 在主控端主机安装ansible&#xff0c;sh setup.sh 确认安装成功后&#xff0c;编辑hosts文件&#xff08;按步骤逐个添加主机组&#xff0c;不要一开始全部配置好&#xff09; [site-init]下的主机列表为被控制的主机&#xff08;按照当前ai建模方案…...

Qt 2D绘图之四:绘图中的其他问题

参考文章链接: Qt 2D绘图之四:绘图中的其他问题 重绘事件 前面讲到的所有绘制操作都是在重绘事件处理函数paintEvent()中完成的,是QWidget类中定义的函数。一个重绘事件用来重绘一个部件的全部或者部分区域,下面几个原因中的任意一个都会发生重绘事件: repaint()函数或者…...

启动中断函数HAL_TIM_Base_Start_IT()

一、这是定时器中断&#xff1a; 前面的NVIC是我们在正常使能定时器的中断&#xff0c;后面的HAL_TIM_Base_Start_IT(&htim2)才是我们真正启动中断。 启动定时器的中断并不会立刻进入中断函数。它只是启动定时器并使能定时器的中断。中断函数&#xff08;例如 TIM2_IRQHan…...

Docker Buildx 与 CNB 多平台构建实践

一、Docker Buildx 功能介绍 docker buildx 是 Docker 提供的一个增强版构建工具&#xff0c;支持更强大的构建功能&#xff0c;特别是在构建多平台镜像和高效处理复杂 Docker 镜像方面。 1.1 主要功能 多平台构建支持 使用 docker buildx&#xff0c;可以在单台设备上构建…...

从Apache Solr 看 Velocity 模板注入

前言 学过 freemaker&#xff0c;学过 Thymeleaf 模板注入&#xff0c;但是还没有学过 Velocity 模板注入&#xff0c;然后学习一个知识最好的方法就是要找一个实际中的例子去学习&#xff0c;好巧不巧&#xff0c;前端时间还在分析 apache solr 的 cve&#xff0c;这次又搜到…...

Spring 事务和事务传播机制

Spring 事务和事务传播机制 一、Spring 事务的基本概念 事务是一组操作&#xff0c;被视为一个不可分割的工作单元&#xff0c;要么全部完成&#xff0c;要么全部失败回滚&#xff0c;以此来确保数据的一致性和完整性。Spring事务管理允许我们在应用程序中声明式地或编程式地…...

flutter 解决webview加载重定向h5页面 返回重复加载问题

long time no see. 如果觉得该方案helps&#xff0c;点个赞&#xff0c;评论打个call&#xff0c;这是我前进的动力~ 通常写法&#xff1a; 项目里用的webview_flutter 正常webview处理返回事件 if (await controller.canGoBack()) {controller.goBack(); } else {Navigator…...

STM32的寄存器是几位的?

STM32的“32”顾名思义就是32位的意思 但是STM32 的寄存器并不都是 32 位的&#xff0c;它们的位宽取决于具体的寄存器和处理器架构。STM32 是基于 ARM Cortex-M 系列内核的微控制器&#xff0c;而这些内核的寄存器通常有不同的位宽。 具体来说&#xff0c;STM32 微控制器的寄…...

基于python的汽车数据爬取数据分析与可视化

一、研究背景 基于提供的代码片段和讨论&#xff0c;我们可以得出一个与网络抓取、数据处理和数据可视化相关的研究背景&#xff0c;该背景涉及到汽车行业。以下是研究背景的陈述&#xff1a; "在迅速发展的汽车行业中&#xff0c;准确和及时的数据对各方利益相关者至关…...

使用mtools搭建MongoDB复制集和分页集群

mtools介绍 mtools是一套基于Python实现的MongoDB工具集&#xff0c;其包括MongoDB日志分析、报表生成及简易的数据库安装等功能。它由MongoDB原生的工程师单独发起并做开源维护&#xff0c;目前已经有大量的使用者。 mtools所包含的一些常用组件如下&#xff1a; mlaunch支…...

Redis(配置文件属性解析)

一、tcp-backlog深度解析 tcp-backlog是一个TCP连接的队列&#xff0c;主要用于解决高并发场景下客户端慢连接问题。配置文件中的“511”就是队列的长度&#xff0c;对联与TCP的三次握手有关&#xff0c;不同的linux内核&#xff0c;backlog队列中存放的元素&#xff08;客户端…...

思维导图+实现一个登录窗口界面

QQ2024122-205851 import sys from PyQt6.QtGui import QIcon, QPixmap, QMovie from PyQt6.QtWidgets import QApplication, QWidget, QLineEdit, QPushButton, QLabel, QVBoxLayout# 封装我的窗口类 class LoginWidget(QWidget):# 构造函数def __init__(self):# 初始化父类su…...

T507 buildroot linux4.9之RTC8563开发调试

文章目录 前言一、硬件确认1.1、RTC8563硬件二、驱动配置2.1、驱动位置2.2、使用config宏配置驱动2.3、DTS配置三、断电重启时间不保存分析四、解决问题五、测试前言 调试T507的RTC8563,解决中调试遇到的问题 一、硬件确认 1.1、RTC8563硬件 通过原理图确认 RTC8563 硬件的…...

网络安全专业术语

网络安全专有名词详解 1.肉鸡 被黑客操控的终端设备&#xff08;电脑、服务器、移动设备等等&#xff09;&#xff0c;黑客可以随心所欲的操作这些终端设备而不会被发觉。 2.木马 表面上伪装成正常的程序&#xff0c;但是当这些程序运行时候就会获取整个系统的控制权限&#…...

【力扣数据库知识手册笔记】索引

索引 索引的优缺点 优点1. 通过创建唯一性索引&#xff0c;可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度&#xff08;创建索引的主要原因&#xff09;。3. 可以加速表和表之间的连接&#xff0c;实现数据的参考完整性。4. 可以在查询过程中&#xff0c;…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 &#xff08;一&#xff09;概念解析 TRS&#xff08;Total Return Swap&#xff09;收益互换是一种金融衍生工具&#xff0c;指交易双方约定在未来一定期限内&#xff0c;基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案

JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停​​ 1. ​​安全点(Safepoint)阻塞​​ ​​现象​​:JVM暂停但无GC日志,日志显示No GCs detected。​​原因​​:JVM等待所有线程进入安全点(如…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

GruntJS-前端自动化任务运行器从入门到实战

Grunt 完全指南&#xff1a;从入门到实战 一、Grunt 是什么&#xff1f; Grunt是一个基于 Node.js 的前端自动化任务运行器&#xff0c;主要用于自动化执行项目开发中重复性高的任务&#xff0c;例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...

【JavaSE】多线程基础学习笔记

多线程基础 -线程相关概念 程序&#xff08;Program&#xff09; 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序&#xff0c;比如我们使用QQ&#xff0c;就启动了一个进程&#xff0c;操作系统就会为该进程分配内存…...

CSS | transition 和 transform的用处和区别

省流总结&#xff1a; transform用于变换/变形&#xff0c;transition是动画控制器 transform 用来对元素进行变形&#xff0c;常见的操作如下&#xff0c;它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...

pikachu靶场通关笔记19 SQL注入02-字符型注入(GET)

目录 一、SQL注入 二、字符型SQL注入 三、字符型注入与数字型注入 四、源码分析 五、渗透实战 1、渗透准备 2、SQL注入探测 &#xff08;1&#xff09;输入单引号 &#xff08;2&#xff09;万能注入语句 3、获取回显列orderby 4、获取数据库名database 5、获取表名…...

深入浅出Diffusion模型:从原理到实践的全方位教程

I. 引言&#xff1a;生成式AI的黎明 – Diffusion模型是什么&#xff1f; 近年来&#xff0c;生成式人工智能&#xff08;Generative AI&#xff09;领域取得了爆炸性的进展&#xff0c;模型能够根据简单的文本提示创作出逼真的图像、连贯的文本&#xff0c;乃至更多令人惊叹的…...