自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(154)
  • 资源 (2)
  • 收藏
  • 关注

原创 Python-127:区间内排列的数量

题目要求统计数组中满足特定条件的子区间数量,即子区间必须是从1到k的排列(包含1到k所有数且不重复,区间长度为k)。例如数组[2,1,5,3,4]中,[2]、[1,2]和[1,5]均符合要求。需编写代码遍历所有子区间,检查其是否为连续自然数的排列。关键点在于验证区间元素是否构成1到k的完整集合且无重复。时间复杂度优化是难点,暴力解法为O(n²),可能需滑动窗口或哈希表优化。

2025-06-06 07:45:00 125

原创 Python-126:农田灌溉最大化作物产量问题

本文解决了一个灌溉渠道优化问题:在n×m的农田矩阵中,选择一行和一列进行灌溉(产量加倍),要求同一位置不能重复加倍。目标是找到最优的行列组合,使总产量最大化。算法思路是预先计算每行和每列的总产量,然后遍历所有可能的行列组合,利用公式total + row_sum[i] + col_sum[j] - cropField[i][j]计算每种组合的增产效果,保留最大值。该方法避免了O(n^2m^2)的暴力计算,优化为O(nm)的时间复杂度,适用于大规模农田。

2025-06-06 07:30:00 224

原创 Python-125:优秀项目组初选评比

该问题要求设定一个项目组评比的晋级分数线x,使得得分大于x的项目组晋级,其余淘汰。晋级的项目组数量需在区间[m,n]内,淘汰的数量也需满足同样条件。若无解输出-1;若多个解存在,则输出最小的x。输入为各项目组得分及区间范围,需编程实现这一逻辑判断。

2025-06-05 08:15:00 114

原创 Python-124:价格优惠计算问题

题目要求计算购物优惠总额。给定商品价格数组p,对每个商品p[i],寻找最近的前驱商品p[j]≤p[i],若存在则将该优惠值p[j]累加。例如p=[9,4,5,2,4]中,只有p[2]=5能找到p[1]=4,故总优惠为4。算法需遍历数组,对每个元素向前搜索首个满足条件的值。时间复杂度为O(n²)的暴力解法即可解决。关键词:价格数组、前驱搜索、优惠累计、暴力解法。

2025-06-05 07:45:00 241

原创 Python-123:字符串最短循环子串

该问题要求判断字符串能否由某个子串重复拼接构成。若能则返回最短重复子串,否则返回空。例如,"abababab"可由"ab"重复得到,而"ab"则不能。解决方案通常通过检查字符串长度与可能的周期关系来判断重复性,常见方法是使用KMP算法或字符串匹配技巧。

2025-06-04 07:32:03 147

原创 Python-122:最大战力值

设计一个手游角色战力平衡系统,其中n个角色的战力值需满足:0号角色初始战力为0,相邻角色战力差不超过±1,且某些角色有最大战力限制。要求计算单个角色能达到的最大战力值。算法需考虑约束条件,通过动态规划或其他方法确定全局最大值。示例输入:n=4,限制条件[[1,2],[2,1]],输出最大战力为2。该问题可转化为在约束条件下寻找满足相邻差值和上限限制的最优解。

2025-06-04 07:30:37 258

原创 Python-121:找出最长的神奇数列

题目要求找出一个由0和1组成的序列中最长的"神奇数列"(即至少包含3个交替的0和1的连续子序列)。例如10101是神奇数列,而1011不是。若存在多个最长数列,则输出最先出现的。需要编写代码解决这个问题,可通过遍历序列并检查交替模式来实现。

2025-06-03 12:30:00 483

原创 Python-121:小强的英雄组合通关策略

该问题要求估算游戏关卡武力值的范围。玩家有m组英雄,每组n个,需从每组各选1个组成组合。已知有k种组合能通关(武力值总和≥关卡要求),需计算关卡武力值的可能范围。输入包含m、n、k及每组英雄武力值序列。输出为最小和最大可能值,若二者相等则直接输出该值。代码需处理输入数据并计算符合条件的武力值区间。

2025-06-03 07:15:00 298

原创 Python-120:摇骰子的胜利概率

摘要:计算小U和小S玩骰子游戏的获胜概率。两人各有n和m个骰子,每个骰子i的面数为a_i和b_j。两人各自掷出点数总和,比较大小决定胜负。需计算小U获胜概率(保留三位小数)。输入包括骰子数量n、m及各自的面数数组arrayN、arrayM(1≤n,m,k≤25)。通过枚举所有可能的点数组合,统计小U总点数大于小S的情况数,除以总可能数得出概率。

2025-06-02 20:37:00 517

原创 Python-119:优惠卷优先级恢复

在一次热闹的促销活动中,小C策划了一项优惠券发放计划,准备了 nn 种不同的优惠券,编号为 11 到 nn。活动结束后,小C发现用于分析的优惠券优先级记录丢失了。他只能依靠活动期间留下的 mm 条顾客发放记录进行恢复。每条记录包含了顾客满足发放条件的所有优惠券类型及他最终获得的优惠券。现在小C希望你能帮忙恢复这些优惠券的优先级顺序。如果存在多个可能的解,输出字典序最小的解。需要注意的是,array表中,每个列表的第一个元素表示后面的抽奖券数,第二个元素表示顾客实际拿到的抽奖券。

2025-06-02 11:14:40 790

原创 Python-118:有限制的楼梯攀登

本文解决了一个特殊的爬楼梯问题,要求计算在不能连续走两步的限制下,到达第n层楼梯的不同走法数量。采用动态规划方法,定义状态f[i][0]和f[i][1]分别表示到达第i层时最后一步是走1步或2步的方式数。通过递推关系式f[i][0] = f[i-1][0] + f[i-1][1]和f[i][1] = f[i-2][0](当i≥2时),最终返回f[n]的总和。测试案例验证了n=2时结果为2的正确性。

2025-05-30 12:45:00 170

原创 Python-117:最优硬币组合问题

本文探讨了使用动态规划解决硬币找零问题,目标是使用最少数量的硬币凑出给定金额。示例给出面值为1、2、5的硬币凑出18元的最优解为[5,5,5,2,1]。代码实现采用动态规划方法,通过维护一个数组f记录最小硬币数,另一个数组pre记录选择路径。算法首先初始化f数组,然后遍历每种硬币面值,更新可能的最小硬币数。最后通过pre数组回溯得到具体硬币组合。该方案能有效解决无限硬币情况下的最小数量找零问题。

2025-05-30 07:15:00 249

原创 Python-116:最大乘积问题

小R遇到一个数组问题,定义了两个函数L(i)和R(i),分别表示在元素a[i]左侧第一个大于它的位置和右侧第一个大于它的位置。要求计算每个元素的MAX(i)=L(i)*R(i),并找出整个数组中的最大值。该问题需要高效地找到每个元素的左右最近更大值,最终输出所有MAX(i)中的最大值。

2025-05-29 13:00:00 394

原创 Python-115:字符串趋同最小代价问题

给定两个等长二进制字符串A和B,通过交换和取反操作使它们相同。交换成本为索引差的绝对值,取反成本固定为2。问题要求计算最小总成本。解决方法需统计字符差异,通过最优交换策略减少操作次数,并比较交换与取反的成本效益。核心在于贪心算法处理相邻差异位,选择成本更低的操作组合。时间复杂度为O(n),空间复杂度为O(1)。

2025-05-29 07:30:00 830

原创 Python-114:字符串字符类型排序问题

该问题要求对包含字母、数字和问号的混合字符串进行特殊排序。问号位置保持不变;数字位置不变但按从大到小排序;字母位置不变但按字典序升序排列。解决方案需要分别提取数字和字母进行排序,再按原始位置重新插入,保持问号不变。程序需处理三种字符类型的分类和位置保留问题。

2025-05-28 12:45:00 207

原创 Python-113:游戏队友搜索

题目要求在一款多人游戏中,根据比赛历史记录找出指定玩家的所有队友(至少共同参与过两局比赛)。输入包括玩家ID、记录条数和比赛记录数组(格式为[玩家ID, 游戏ID])。需返回队友ID的升序列表,若无则输出空列表。例如,给定样例记录,玩家1的队友为玩家2和4,因其共同参与过2次比赛。解决方案需遍历比赛记录,统计共同参与次数,筛选符合条件的玩家ID并排序输出。

2025-05-28 07:45:00 419

原创 Python-112:版本号比较

摘要: 该问题要求比较两个由点分隔的版本号字符串(如"2.5.33"),忽略前导零后按修订号逐级比较。规则为:从左到右依次对比各段数字值,缺失段补0。若version1大返回1,小返回-1,相等返回0。例如比较"1.01"和"1.001"会判定为相同版本。需注意版本号长度可能不同,需动态补零处理。

2025-05-27 12:15:00 497

原创 Python-111:学习技能时间计算

该问题描述了一个养成类游戏中角色属性增长的机制。角色初始体力、智力、武力均为0,每天属性值按growup数组递增。通过学习技能需要满足skill数组中的属性要求。任务是根据growup计算每个技能最早在第几天能学习(从第1天开始),若无法满足则返回-1。例如,growup=[[1,1,2],[2,2,1]]表示前两天的属性增长情况,需要针对每个技能要求计算出达标天数或返回不可达标记。

2025-05-27 07:30:00 360

原创 Python-110:小M的书柜设计

题目要求帮助小M设计书房书柜布局:将按时间排序的书籍分组,每组内书籍高度差不超过k且序号连续。需要计算:1)每组最多可放多少本书;2)达到该最大值的分组方式数量;3)每种方式的最小和最大序号。输出格式为首行给出最大数量和方式数,后续每行列出一个分组方式的范围。这本质上是一个在连续子数组约束条件下的区间划分问题。

2025-05-26 12:45:00 678

原创 Python-109:字符修复问题

摘要:给定一个长度为n的小写字母字符串str1,其中标记为可修改的位置(str2[i]=1)最多可进行m次修复操作(修改为任意字母)。要求找出在最多m次操作后,字符串中最长连续相同字符子串的最大长度。问题转化为对每个字母,用滑动窗口计算在最多修改m个可修改字符的情况下能获得的最长连续该字母子串,最终取所有字母的最大值。核心思路是双指针维护满足条件的窗口,时间复杂度为O(26n)。

2025-05-26 07:30:00 291

原创 Python-108:机器人能量冒险

摘要: 题目要求判断机器人能否从起点(位置0)移动到终点(位置N-1)。机器人初始有5个能量值,每次移动消耗当前位置的能量(步数≤当前能量值),并获取新位置的能量继续前进。若某位置能量为0则停止。算法需遍历可能的步数,通过贪心或动态规划判断可达性。例如,输入数组[3,2,1,0,4]时,机器人无法跨越能量0的位置,返回false;而[2,3,1,1,4]可通过逐步跳跃到达终点,返回true。核心是维护当前可到达的最远位置,并实时更新。

2025-05-25 13:00:00 241

原创 Python-107:小U的防御挑战

摘要:本文描述了一个游戏防御判断问题,要求通过计算防御宝石乘积是否可被攻击宝石乘积整除来确定防御是否成功。给出了Python代码实现,通过遍历数组计算乘积并进行模运算判断,返回"yes"或"no"。测试用例验证了代码的正确性。核心算法是简单的数值乘积与取模运算。

2025-05-25 07:45:00 190

原创 Python-106:小M的幸运数列变换

小M希望通过选择不同的区间进行加1操作,将数组中的所有元素变为w。每次操作的区间左边界l和右边界r必须唯一。代码通过计算每个元素与w的差值,并根据差值的连续性判断是否满足条件。如果差值连续且合理,则计算可能的操作方案数;否则返回0。测试用例验证了代码的正确性,例如当n=2、w=2、数组为[1,1]时,有2种操作方案;当n=3、w=3、数组为[1,2,3]时,无有效方案。

2025-05-24 08:15:00 190

原创 Python-105:小M的能力选择挑战

摘要:小M在游戏“狼人拯救者”中,需要通过消耗金币购买能力来提升攻击力,同时确保攻击速度不低于0。他拥有G枚金币和S点初始攻击速度,面对N种能力,每种能力用三元组[c, s, d]表示,其中c为金币消耗,s为攻击速度影响,d为攻击力增加。目标是找到在攻击速度非负的前提下,最大化攻击力的购买方案。代码需实现这一逻辑,通过遍历所有可能的能力组合,计算满足条件的最优解。

2025-05-24 07:45:00 223

原创 《全志T3》_嵌入式产品Ubuntu操作系统启动详解一

芯片厂商提供的SDK包含多个关键目录和工具,用于系统启动和开发。主要目录包括Bootloader(brandy)、工具链和依赖(buildroot-201611)、参考文档(doc)、操作系统(linux-3.10)以及工具(tools)。整个工程的编译依赖于“build.sh”脚本。系统启动过程分为几个阶段:BROM阶段,机器上电后执行固化的引导程序,寻找并加载Bootloader;Bootloader阶段,分为Boot0和Boot1,负责初始化DRAM和系统调频;U-Boot阶段,引导内核并执行平台初始

2025-05-23 21:07:34 838

原创 Python-104:小M的光明之魂速通挑战

小M参加《光明之魂》速通比赛,需使用N把武器按顺序击败M个Boss。每把武器能击败两种类型的Boss,但只能使用一次。Boss有唯一类型编号,玩家必须按顺序击杀,不能跳过。目标是计算小M最多能击败多少个Boss。输入包括武器数量n、Boss数量m、Boss类型列表boss和武器能力列表array。代码需实现这一逻辑,通过遍历Boss和武器,匹配可用武器并计数,最终返回最大击败数。

2025-05-23 13:15:00 225

原创 Python-103:小M的弹子游戏机挑战

小M最近沉迷于一款弹子游戏机,游戏规则如下:玩家可以在版面最上方任意位置放置弹珠,弹珠经过得分点时获得相应分数,目标是获得最高分。版面由钉子和得分点组成:钉子(-1)会使弹珠弹射到左下或右下位置,得分点(非负整数)提供分数,空格(0)则使弹珠直接下落。给定一个n×m的二维数组表示版面布局,其中-1表示钉子,0表示空格,正整数表示得分点。小M希望计算在给定版面中能够获得的最高分数。

2025-05-23 07:30:00 321

原创 Python-102:小M的星球时代冒险

文章摘要:小M在游戏《孢子》中需要在一个星球上完成跑腿任务,星球地图可抽象为n行m列的矩阵,移动时地图边缘会循环连接。地图由两个数列a和b生成,地形类型由a[i]和b[j]的值决定。小M需从起点(x1,y1)移动到终点(x2,y2),并计算最少需要跨越多少次地形。输入包括地图行数n、列数m、地形数列a和b、任务数量q及任务坐标数组array。目标是编写代码计算每个任务的最少地形跨越次数。

2025-05-22 12:30:00 752

原创 Python-101:小M的多任务下载器挑战

小M在编写多任务下载器时,需要计算任务的最高并发数。给定N个任务,每个任务在第x秒开始,持续y秒。通过遍历每个任务的时间段,记录每个时间点的任务数,最终找到最大值。

2025-05-22 07:30:00 257

原创 Python-100:最佳人选

该问题要求设计一个算法,从备选士兵中筛选出与任务性格密码最匹配的士兵。匹配规则基于性格维度的差异值计算,若某一维度存在不相容类型(AE、BD、CE、BE),则士兵与任务完全不匹配。对于匹配的士兵,差异值总和越小,匹配程度越高。算法步骤如下: 遍历备选士兵:逐个检查每个士兵的性格密码。 计算差异值:对于每个维度,计算士兵与任务性格密码的差异值。若出现不相容类型,则跳过该士兵。

2025-05-21 12:45:00 1427

原创 Python-99:五子棋获胜策略

假设存在一个五子棋棋盘,大小未知。棋盘上已经摆放了一些白色棋子,现在你的手中还有一个白色棋子。你的任务是找出在棋盘的哪些位置摆放这个棋子,能够使棋盘上出现五颗棋子连成一线(不限于横向、纵向或斜向)。备注:棋盘上当前不存在连成一条线的五个棋子,但至少存在一个点可以通过摆放使得形成五子连线。

2025-05-21 07:45:00 735

原创 Python-98:完美整数

要计算给定区间 [x, y] 中的完美整数数量,可以通过遍历区间内的每个整数,并检查其是否由相同的数字构成。具体步骤如下: 遍历区间:从 x 到 y 遍历每个整数。 检查完美整数:对于每个整数,将其转换为字符串,检查所有字符是否相同。 计数:如果满足条件,则计数器加一

2025-05-20 13:00:00 499

原创 Python-97:贪心的小包

小包收到M次相同的N个甜点,每个甜点有对应的喜爱值(可能为负)。他将这些甜点首尾相接排成一排,形成N×M个甜点的序列。小包希望从中选择一段连续的甜点,使得总喜爱值最大化。问题要求设计一个算法,输入为甜点数量N、次数M和喜爱值数组data,输出为最大总喜爱值。该问题可以转化为在循环数组中寻找最大子数组和的问题,需考虑跨边界的情况。

2025-05-20 07:45:00 447

原创 Python-96:兔群繁殖之谜

此问题描述的是经典的斐波那契数列问题。兔子的繁殖规律与斐波那契数列的生成规则一致:每个月的兔子对数等于前两个月兔子对数的和。初始条件为第1个月有1对兔子,第2个月有2对兔子。从第3个月开始,每个月的兔子对数等于前两个月的兔子对数之和。因此,可以通过递归或动态规划的方法来计算第A个月的兔子对数。

2025-05-19 12:30:00 721

原创 Python-95:统计班级中的说谎者

文章摘要:小C的班级中有N个学生,每个学生的成绩为A_i。小C发现,当且仅当某个学生的成绩小于或等于自己的学生数量大于比他成绩高的学生数量时,这个学生会说谎。换句话说,如果分数小于等于他的学生数量超过比他分数高的学生数量,则该学生会说谎。小C希望计算班级中有多少学生会说谎。这个问题可以通过编写代码来实现,具体方法是对每个学生的成绩进行统计,比较小于等于和大于该成绩的学生数量,从而判断该学生是否说谎。

2025-05-19 07:30:00 739

原创 Python-94:糖果传递游戏

在这个糖果传递游戏中,小U和n个小朋友排成一列,小U位于最右边。每个小朋友初始拥有一定数量的糖果,小U手中还有m个糖果需要分配。分配规则是:每个糖果从第一个小朋友开始传递,若当前小朋友的糖果数(包括新分配的)小于或等于右边的小朋友,则保留糖果;否则,传递给下一个小朋友。若传递到第n个小朋友仍无法保留,则糖果归小U。目标是确定第m个糖果最终分配给哪个小朋友或小U。可以通过模拟传递过程,逐个分配糖果并判断其最终归属,从而得出结果。

2025-05-18 12:30:00 321

原创 Python-93:数字增殖问题

该问题要求通过多次“增殖”操作生成一个递增序列,并找到指定位置的数字。初始数字为n,每次增殖操作将n扩展为1到n的递增序列。经过k次操作后,序列的长度为n^k。若位置索引p超出序列长度,则返回-1;否则,通过数学计算确定第p个位置的数字。具体实现可通过递归或迭代完成,时间复杂度为O(k)。

2025-05-18 08:00:00 274

原创 Python-92:最大乘积区间问题

小R需要从给定数组中选取一段连续区间,使得区间内元素的乘积最大。数组元素来自特定集合,且数组长度大于0。要求输出最大乘积区间的起始位置x和结束位置y(x ≤ y),若存在多个区间乘积相同,优先选择x较小的区间,x相同则选y较小的区间。代码需遍历所有可能的区间,计算其乘积,并记录最大值及对应的区间位置。最终输出符合条件的x和y。

2025-05-17 16:44:49 1229

原创 Python-91:时尚圈的衣着稳定性问题

摘要:小U在时尚圈组织了一场“校服日”活动,有n名学生围成一圈,穿着白色(0)或黑色(1)校服。每天,学生根据与相邻两位的校服颜色决定是否更换颜色。若某学生与两位相邻学生颜色相同,则第二天更换颜色;否则保持不变。任务为判断第几天学生穿着达到稳定状态(不再变化),并计算稳定后与相邻学生颜色不同的“时尚达人”人数。若无法稳定,则输出-1。最终返回一个数组,包含稳定天数(或-1)和“时尚达人”人数(或-1)。

2025-05-17 16:41:58 291

原创 Python-90:字符替换与最长子串问题

文章摘要:小R有一个长度为n的大写字母字符串,她可以进行最多k次修改,每次修改可以将任意位置的字符改为任意字符。目标是找到在最多k次修改后,字符串中由最多两种不同字母组成的最长连续子串的长度。这个问题可以通过滑动窗口和哈希表结合的方法来解决,通过维护窗口内字符的频率,确保在k次修改内将窗口内的字符种类限制在两种以内,从而找到最长的符合条件的子串。

2025-05-16 13:00:00 140

小游戏-python-俄罗斯方块

俄罗斯方块游戏简易版三

2025-04-20

游戏-python-俄罗斯方块-简易版

通过使用python库,编写的简易版俄罗斯方块游戏

2025-04-18

嵌入式-keil-pack-GD32F30x

嵌入式GD32F30x芯片keil使用pack包

2025-04-17

SLM332x系列模组AT指令集

SLM332x系列模组AT指令集

2025-04-13

【无线通信模组】美格智能Cat.1模组SLM332规格说明:支持GNSS与Wi-Fi扫描,适用于工业表计及共享设备等领域

内容概要:美格智能推出的SLM332是一款支持LTE Cat.1无线通信模组,具有最大下行速率达10Mbps和最大上行速率达5Mbps,支持GNSS与Wi-Fi扫描功能。该模组采用国产芯片方案,尺寸为17.6*15.7*2.4mm,兼容2G产品的封装,便于客户设计尺寸需求。它不仅支持多种网络协议(如TCP、UDP、MQTT等),还提供丰富的外设接口(包括UART、I2C、I2S、SPI、SDIO等),适用于工业表计、共享设备、安防监控、金融POS、Tracker、POC等领域。此外,SLM332支持FOTA远程升级、GPS(可选)、蓝牙4.2等特性,具备超高的性价比。 适合人群:从事物联网、无线通信领域的工程师或技术人员,尤其是对LTE Cat.1模组有需求的研发人员。 使用场景及目标:①用于需要稳定且快速数据传输的应用场景,如工业表计、安防监控等;②满足多媒体及Open CPU开发需求,适合智能设备开发者;③借助FOTA功能实现远程固件更新,降低维护成本;④利用其兼容性,方便从2G产品向LTE Cat.1过渡。 其他说明:SLM332模组具备良好的环境适应能力,可在-30℃~75℃的工作温度范围内正常运行。供电电压为3.5V~4.35V,典型值为3.8V。模组支持多频段,覆盖国内外多个LTE频段,确保在全球范围内的广泛适用性。美格智能还提供了驱动程序和工具支持,包括Windows、Linux、Android平台下的驱动,以及一键式升级工具,方便用户进行开发和维护。

2025-04-13

wsl更新包+linux操作系统

搭建windows系统下基于wsl的交叉编译环境已验证配套软件

2025-04-09

嵌入式+MQTT开源库

嵌入式单片机使用MQTT开源库,帮助从底层理解MQTT协议

2025-04-09

MQTT技术标准,包含3.1.1和5.0版本

MQTT技术标准,包含3.1.1和5.0版本,适合学习mqtt通信协议的开发者

2025-04-03

GDB使用说明

自己整理的GDB使用说明 包括arm下的移植与编译

2013-07-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除