蓝桥杯算法赛 第 6 场 小白入门赛 解题报告 | 珂学家 | 简单场 + 元宵节日快乐
前言

整体评价
因为适逢元宵节,所以这场以娱乐为主。
A. 元宵节快乐
题型: 签到
节日快乐,出题人也说出来自己的心愿, 祝大家AK快乐!
import java.util.Scanner;public class Main {public static void main(String[] args) {System.out.println("Today AK!");}
}
B. 猜灯谜
思路: 模拟
按题意模拟即可,环状结构
import java.io.BufferedInputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.stream.Collectors;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(new BufferedInputStream(System.in));int n = sc.nextInt();int[] arr = new int[n];for (int i = 0; i < n; i++) {arr[i] = sc.nextInt();}List<Integer> res = new ArrayList<>();for (int i = 0; i < n; i++) {res.add(arr[(i - 1 + n) % n] + arr[(i + 1) % n]);}System.out.println(res.stream().map(String::valueOf).collect(Collectors.joining(" ")));}}
C. 数学奇才
思路: 思维题
可以贪心逆序从右到左翻转,每次翻转保证最右的非负数多一项,题意保证最多有n次。
所以,必然存在操作序列,使得数组元素全变非负形态。
∑ i = 0 i = n − 1 a b s ( a i ) \sum_{i=0}^{i=n-1} abs(a_i) i=0∑i=n−1abs(ai)
import java.io.BufferedInputStream;
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(new BufferedInputStream(System.in));int n = sc.nextInt();long[] arr = new long[n];long sum = 0;for (int i = 0; i < n; i++) {arr[i] = sc.nextLong();sum += Math.abs(arr[i]);}System.out.println(sum);}}
D. 你不干?有的是帕鲁干
思路: 解方程
假设第一个元素为y, 那么
( y + 2 ) 2 − y 2 = 4 ( y + 1 ) = x (y + 2) ^ 2 - y ^ 2 = 4(y + 1) = x (y+2)2−y2=4(y+1)=x
那么该y为
y = x / 4 − 1 y=x/4 - 1 y=x/4−1
这边需要保证x是4的倍数,同时y必须为>=1的奇数
import java.io.BufferedInputStream;
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(new BufferedInputStream(System.in));int t = sc.nextInt();while (t-- > 0) {long x = sc.nextLong();if (x % 4 != 0) {System.out.println("No");} else {long y = x / 4 - 1;if (y <= 0 || y % 2 == 0) {System.out.println("No");} else {System.out.println("Yes");System.out.println((y) + " " + (y + 2));}}}}}
E. 等腰三角形
思路: 贪心+双指针
感觉这题是这场周赛最难的,但是和历史比,算中等偏下的题
因为三角形中,边的关系需要满足,
任意两边之和必须大于第三边 任意两边之和必须大于第三边 任意两边之和必须大于第三边
这题也是最大二分匹配模型
不过这题有个取巧的地方,就是
从底边出发
如果 b i < b j b_i < b_j bi<bj, 则选用 b i b_i bi 比 b j b_j bj 的结果不会变差
因此可以对腰边和底边进行排序
然后使用双指针,进行贪心配对
import java.io.BufferedInputStream;
import java.util.Arrays;
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(new BufferedInputStream(System.in));int n = sc.nextInt();int[] arr = new int[n];int[] brr = new int[n];for (int i = 0; i < n; i++) {arr[i] = sc.nextInt();}for (int i = 0; i < n; i++) {brr[i] = sc.nextInt();}Arrays.sort(arr);Arrays.sort(brr);// 双指针int res = 0;int j = 0;for (int i = 0; i < n; i++) {while (j < n && arr[j] * 2 <= brr[i]) {j++;}if (j < n) {j++;res++;}}System.out.println(res);}}
F. 计算方程
思路: 二分
因为其函数是单调的,呈现单调性
因此用二分是最优解
import java.io.BufferedInputStream;
import java.util.Scanner;public class Main {static boolean check(int x, int k, int m) {double r1 = Math.sqrt(1.0 * x);double r2 = (int)(Math.log(x) / Math.log(k));return r1 + r2 > m;}public static void main(String[] args) {Scanner sc = new Scanner(new BufferedInputStream(System.in));int t = sc.nextInt();while (t-- > 0) {int k = sc.nextInt(), m = sc.nextInt();int l = 1, r = m * m;while (l <= r) {int mid = l + (r - l) / 2;if (check(mid, k, m)) {r = mid - 1;} else {l = mid + 1;}}System.out.println(l);}}}
写在最后
相关文章:
蓝桥杯算法赛 第 6 场 小白入门赛 解题报告 | 珂学家 | 简单场 + 元宵节日快乐
前言 整体评价 因为适逢元宵节,所以这场以娱乐为主。 A. 元宵节快乐 题型: 签到 节日快乐,出题人也说出来自己的心愿, 祝大家AK快乐! import java.util.Scanner;public class Main {public static void main(String[] args) {System.out.println(&qu…...
附加Numpy数组
参考:Append Numpy Array 引言 在数据科学和机器学习领域,处理大规模数据集是一项重要且常见的任务。为了高效地处理数据,numpy是一个非常强大的Python库。本文将详细介绍numpy中的一个重要操作,即如何附加(append&a…...
收银系统源码-智慧新零售,ERP进销存功能详解
智慧新零售是一套线下线上一体化的收银系统,不仅给门店线下提供了多样化的收款方式,还提供了和线下深度打通的线上小程序商城。有线下又有线上自然需要一套完整的进销存模块能高效的管理商品。 智慧新零售进销存功能涵盖了商品的采购、销售、调拨、盘点…...
STM32使用PB3, PB4引脚的注意事项
STM32的PB3, PB4引脚作为GPIO引脚需要注意,因为他们默认分别是JTDO和NJTRST引脚。 笔者在设计可调增益增益放大器(VGA)的时候,使用4个GPIO读取外部控制电压,根据约定的编码格式设定DAC的输出电压,从而设置V…...
OSCP靶场--DVR4
OSCP靶场–DVR4 考点(1.windows:路径遍历获取私钥getshell 2.ssh shell中runas切换用户) 1.nmap扫描 ┌──(root㉿kali)-[~/Desktop] └─# nmap -sV -sC -p- 192.168.161.179 --min-rate 2000 Starting Nmap 7.92 ( https://nmap.org ) at 2024-02-29 07:14 EST…...
【嵌入式——QT】日期与定时器
日期 QTime:时间数据类型,仅表示时间,如 16:16:16;QDate:日期数据类型,仅表示日期,如2024-1-22;QDateTime:日期时间数据类型,表示日期和时间,如2…...
如何决定使用HashMap还是TreeMap?
使用 HashMap 还是 TreeMap 取决于你的需求和对数据结构的理解。 HashMap: 快速插入和查找:HashMap 提供了常数时间(O(1))的插入和查找操作,因此对于需要快速插入和查找的场景非常适用。无序性:HashMap 不保…...
平台工程与安全
平台工程不是为了取代DevOps,而是DevOps的进一步演进和发展。本文介绍了DevOps和平台工程,以及对于安全的意义。原文: Platform Engineering and Security: A Very Short Introduction 中国云南大理的日落 我是一名 DevOps 工程师,个人还是希…...
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人(机器人大模型与具身智能挑战赛)
智能咖啡厅助手:人形机器人 融合大模型,行为驱动的智能咖啡厅机器人(机器人大模型与具身智能挑战赛) “机器人大模型与具身智能挑战赛”的参赛作品。的目标是结合前沿的大模型技术和具身智能技术,开发能在模拟的咖啡厅场景中承担服务员角色并…...
js处理IOS虚拟键盘弹出后输入框被遮住
JS IOS 前言 在项目开发的过程中,在IOS手机端系统下,当对输入框(input/textarea)进行focus操作时,键盘弹起遮住输入框。 问题描述 从页面底部focus输入框失败从页面中间focus输入框失败 原因 造成上述问题的&…...
脚手架工程使用ElementUI
在终端中执行以下指令 npm install --save element-ui 在终端中显示added 9 packages in 10s 说明安装完成 在工程的main.js中 导入并使用ElementUI: import ElementUI from element-ui import element-ui/lib/theme-chalk/index.css Vue.use(ElementUI) 可以在*.vue页面中…...
163邮箱SMTP端口号及服务器地址详细设置?
163邮箱SMTP端口号是什么?163邮件SMTP设置教程? 除了基本的邮箱账号和密码外,还需要了解SMTP服务器地址和端口号,以及相应的设置。这些设置对于确保邮件能够顺利发送至关重要。下面,蜂邮EDM将详细介绍163邮箱SMTP端口…...
【STM32】STM32学习笔记-独立看门狗和窗口看门狗(47)
00. 目录 文章目录 00. 目录01. WDG概述02. 独立看门狗相关API2.1 IWDG_WriteAccessCmd2.2 IWDG_SetPrescaler2.3 IWDG_SetReload2.4 IWDG_ReloadCounter2.5 IWDG_Enable2.6 IWDG_GetFlagStatus2.7 RCC_GetFlagStatus 03. 独立看门狗接线图04. 独立看门狗程序示例105. 独立看门…...
计算机网络——IPV4数字报
1. IPv4数据报的结构 本结构遵循的是RFC 791规范,介绍了一个IPv4数据包头部的不同字段。 1.1 IPv4头部 a. 版本(Version):指明了IP协议的版本,IPv4表示为4。 b. 头部长度(IHL, Internet Header Length&…...
java抽象方法和抽象类
1、抽象方法 如果父类的方法本身不需要实现任何功能,仅仅是为了定义方法签名,目的是让子类去覆盖它,那么,可以把父类的方法声明为抽象方法。 class Person { // 定义抽象方法public abstract void run(); } 把一个方法声明为a…...
echarts鼠标向右/向左绘制实现放大/还原
echarts toolbox 的datazoom提供了绘制放大的功能,但通过鼠标绘制只能进行放大 应需求放大与还原都通过鼠标行为实现,增加从右往左绘制时还原放大结果 demo 结果 重写datazoom的原型方法实现绘制事件的拦截 const comp myChart._model.getComponent(to…...
Go编译DLL与SO
1. 简介 将Go编译成DLL/SO供其他语言调用。 .DLL:文件是 Windows 操作系统的动态链接库文件。.SO 文件是 Unix、Linux 和其他类 Unix 系统的共享库文件。 2. Go编译DLL/SO 注意 export后面导出的方法名一定要大写。 package main/* #include <stdlib.h>…...
css浮动
标准流:也叫文档流,指的是标签在页面中默认的排布规则。 浮动:让块级元素水平排列(float:left/right;)。 特点:浮动后的盒子顶对齐; 浮动后的盒子具备行内块的特点; 浮动后的元素脱…...
小程序怎么开发?怎么开发自己的小程序
一、明确需求与定位 在开发小程序之前,需要明确需求. 首先,明确小程序的定位非常重要。我们需要确定小程序是为了提供便捷的购物体验还是特定领域的服务。明确定位可以帮助我们更好地设计和优化小程序的功能,以符合用户的期望和需求。 其次…...
Unity(第十八部)物理力学,碰撞,触发、关节和材质
1、重力 刚体组件 英文中文描述RigidBody刚体组件physics->rigidbody ,刚体组件使一个物体有了质量,重力等。,use gravity 勾选后,物体才会受到重力,会自动下落,取消勾选就不会。,…...
用Python实战一阶微分方程:从分离变量到伯努利方程求解可视化
用Python实战一阶微分方程:从分离变量到伯努利方程求解可视化 微分方程作为描述动态系统的重要工具,在物理、工程、生物等领域有着广泛应用。但对于许多编程爱好者来说,数学理论与代码实现之间总有一道难以跨越的鸿沟。本文将带你用Python的S…...
PDF-Parser-1.0效果实测:精准识别PDF中的表格和数学公式,亲测好用
PDF-Parser-1.0效果实测:精准识别PDF中的表格和数学公式,亲测好用 1. 开箱体验:第一印象与核心能力 打开PDF-Parser-1.0的Web界面,简洁的布局让人眼前一亮。上传一份包含复杂表格和数学公式的学术论文PDF后,点击&quo…...
避坑指南:Xilinx Aurora IP核多核例化时,GT_RESET信号必须保持10个时钟周期的原因
Xilinx Aurora IP核多核例化中GT_RESET信号的时序陷阱与实战解决方案 在FPGA高速串行通信领域,Xilinx的Aurora 8B/10B协议IP核因其简洁高效的特性,成为多通道数据交互的首选方案。但当工程师尝试在单个QUAD中例化多个Aurora IP核以实现高密度链路时&…...
重组蛋白表达优化七步:从实验室到高产量的系统化解决方案
第一步:表达宿主的选择与适配选择合适的表达宿主是重组蛋白表达成败的首要决定因素。大肠杆菌表达系统遗传背景清晰、生长快速、操作简便,是实验室最常用的原核表达平台。对于含复杂二硫键或翻译后修饰的真核蛋白,哺乳动物细胞或昆虫细胞系统…...
避免Gitee克隆失败:git exit code 1报错的预防与解决方案全攻略
避免Gitee克隆失败:git exit code 1报错的预防与解决方案全攻略 在团队协作开发中,代码仓库的稳定访问是保障开发效率的基础。Gitee作为国内广泛使用的代码托管平台,偶尔出现的git exit code 1报错却可能让开发者陷入困境。这种报错不仅中断工…...
AtCoder Beginner Contest 438
【小羊肖恩】Atcoder Beginner Contest 438 实录——上次 AK 还在上 次,G 前后掉了 8 名!还是不太会写环上的东西…… https://www.bilibili.com/video/BV1teBCBYER9/ AtCoder Beginner Contest 438 https://www.bilibili.com/video/BV1a8BCBKEnX/ https…...
终极指南:如何用Rack构建可扩展的微服务架构
终极指南:如何用Rack构建可扩展的微服务架构 【免费下载链接】rack A modular Ruby web server interface. 项目地址: https://gitcode.com/gh_mirrors/ra/rack Rack是一个模块化的Ruby Web服务器接口,它通过最简单的方式包装HTTP请求和响应&…...
崩坏星穹铁道自动化助手:三月七小助手完整使用指南
崩坏星穹铁道自动化助手:三月七小助手完整使用指南 【免费下载链接】March7thAssistant 崩坏:星穹铁道全自动 三月七小助手 项目地址: https://gitcode.com/gh_mirrors/ma/March7thAssistant 游戏时间解放革命:告别重复劳动的智能方案…...
MusicFree插件开发初探:手把手教你写一个简单的音源接口(.js文件)
MusicFree插件开发实战:从零构建自定义音源接口 第一次看到MusicFree的插件列表时,我就被它的开放性震撼了——这个播放器本身只是个"空壳",所有音源功能都靠插件实现。作为开发者,这意味着我们不仅能自由选择音源&…...
炸了!扒完 51 万行泄露的 AI 源码,我发现:你的 AI 傻,根本不是模型的锅
你有没有过这种体验:兴冲冲地用上了号称 “全能 AI 助手” 的产品,结果发现它要么记不住你昨天说过的话,要么干着干着就忘了自己要干嘛,要么就是动不动就把你的文件搞乱?我之前也一样,直到上个月࿰…...
