
算法题,编程题
文章平均质量分 86
本专栏专注分享算法题与编程题的技巧、思路和知识点,助力算法学习者与编程爱好者提升能力
凭君语未可
Hi,我是Weiki,一位普通大学生,学习ing 交流+V xitt808
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
豆包MarsCode:字符串字符类型排序问题
通过这种方式,能够保持问号位置不变,同时按照要求对字母和数字进行了重新排序。通过这一过程,我们可以分离出所有需要排序的字母和数字。排序的结果分别保存在两个列表中。原创 2025-01-27 21:51:42 · 1398 阅读 · 0 评论 -
豆包MarsCode:前缀和计算问题
新建一个数组prefixSum,长度与输入数组nums相同,用于存储前缀和。创建结果数组prefixSum,长度与nums相同。如果nums为空,则直接返回prefixSum。将初始化为nums[0]。遍历数组,从第二个元素开始:返回结果数组prefixSum。原创 2025-01-27 21:51:29 · 1126 阅读 · 0 评论 -
豆包MarsCode:字符串最短循环子串
给定一个字符串 `inp`,如果可以通过一个较短的子串多次拼接生成,则满足题目要求。如果找不到满足条件的子串,则输出空字符串。原创 2025-01-23 20:30:50 · 1130 阅读 · 1 评论 -
豆包MarsCode:小C的类二进制拼图
时间复杂度O(k),其中k是数字n的长度。我们只需要遍历一次n。空间复杂度O(1),只使用常量的额外空间(除了输入字符串)。由于每一位的数字决定了我们在构造数字时所需的类二进制数字的个数,且最大数字代表了最大的需求(即最多需要多少个类二进制数字),因此数字n的最大位数字就是我们最少需要的类二进制数字个数。原创 2025-01-23 20:30:15 · 830 阅读 · 0 评论 -
豆包MarsCode:小C点菜问题
HashMap 用于统计频率:通过遍历菜品价格并更新每个价格的出现次数,使用来确保价格不在priceCount中时,能够正确初始化为 0。最大频率的查找:通过遍历哈希表的所有值,找到最大的频率,最后返回。时间复杂度:遍历数组w和哈希表的操作,整体时间复杂度是O(n),其中n是菜单价格的数量。原创 2025-01-20 18:32:35 · 1161 阅读 · 0 评论 -
豆包MarsCode:构造特定数组的逆序拼接
核心逻辑:通过两层循环实现从n到i的逆序拼接。时间复杂度On2O(n^2)On2,因为内外循环的嵌套导致操作次数随着nnn增加而呈二次增长。空间复杂度On2O(n^2)On2,因为我们创建了一个长度为nn12n(n+1)/2nn1/2的数组来保存结果。原创 2025-01-18 22:05:26 · 1220 阅读 · 0 评论 -
豆包MarsCode:组成字符串ku的最大次数
解题的核心是统计两个目标字符的频率,并取其较小值作为结果。通过简单的遍历和条件判断即可实现。代码优化主要集中在可读性和效率提升方面,例如用简化大小写处理,用Math.min替代手动判断等。原创 2025-01-17 17:02:38 · 392 阅读 · 0 评论 -
豆包MarsCode:字符串对比问题
核心是维护一个计数器balance,它通过'L'和'R'的数量变化来判断是否找到一个平衡子串。每次balance归零时,可以拆分一个子串,最终统计总数即可。原创 2025-01-01 14:07:01 · 726 阅读 · 0 评论 -
豆包MarsCode:统计班级中的说谎者
对于每个学生,我们需要统计:分数小于或等于他的人数,分数大于他的人数,如果 lessOrEqual > greater,他就会说谎。原创 2024-12-26 13:00:00 · 595 阅读 · 0 评论 -
豆包MarsCode:a替换函数
在这个问题中,我们的目标是将字符串中的所有小写字母'a'替换为"%100"。为了实现这一点,我们需要分析问题的核心需求和合理的解决方案。原创 2024-12-25 00:08:25 · 393 阅读 · 0 评论 -
豆包MarsCode:比赛配对问题
n / 2n / 2。原创 2024-12-23 23:47:03 · 655 阅读 · 0 评论 -
豆包MarsCode:小E的射击训练
小E需要计算射击点(x, y)的得分,得分依据点到靶心(0, 0)关键是判断射击点位于哪个环,依次计算得分。原创 2024-12-23 12:14:09 · 889 阅读 · 0 评论 -
豆包MarsCode:小U的数字插入问题
问题的核心是找到将数字b插入到数字a的某个位置后,使形成的数字尽可能大。原创 2024-12-22 19:53:26 · 1141 阅读 · 0 评论 -
豆包MarsCode:小T的密码变换规则
遍历字符串中的每个字符。对字符进行判断并转换:小写字母按规则转换;大写字母先转换为小写字母,再跳到前一个字母进行转换,A特殊处理;非字母字符直接添加到结果中。最终通过构建并返回结果字符串。原创 2024-12-22 16:56:41 · 1123 阅读 · 0 评论 -
蓝桥杯:好数
通过循环逐个检查每个数字的各个位置(从个位到高位),判断该位置的数字是否符合“好数”的要求。对于每个数字,我们从个位开始检查。如果该位置是奇数位,数字必须是奇数;如果该位置是偶数位,数字必须是偶数。如果有一个位置不满足条件,就可以立即判定该数不是“好数”。原创 2024-11-24 07:30:00 · 1816 阅读 · 0 评论 -
豆包MarsCode算法题:三数之和问题
这道题的目标是从数组 arr 中找到所有满足条件 i < j < k 且 arr[i] + arr[j] + arr[k] == target 的三元组 (i, j, k) 的数量,并对结果取模原创 2024-11-23 17:54:41 · 1391 阅读 · 0 评论 -
PTA编程题:N个数求和
将分数拆解为分子和分母,存储并处理。即分子相加、分母相乘。:求分数的最大公因数(GCD),将其约分至最简形式。分数可以表示为:如果分子整除分母,则结果为整数;否则需要输出带分数形式。原创 2024-11-21 22:51:33 · 1076 阅读 · 0 评论 -
豆包MarsCode算法题:最小周长巧克力板组合
用dp[i]表示面积为i时的最小周长。最终答案即为dp[n]。原创 2024-11-21 20:48:29 · 723 阅读 · 0 评论 -
豆包MarsCode算法题:完美整数
遍历区间 [x, y]:判断某个整数是否为完美整数:计数:方法1:字符串方法方法2:数学方法代码分析 方法功能:计算给定区间 中的完美整数数量。输入参数:两个整数 和 ,表示区间的起点和终点。实现逻辑:遍历区间内的每个整数 。调用辅助方法 判断 是否为完美整数。若是完美整数,计数器 加 1。输出:返回区间内完美整数的总数。 方法功能:判断某个整数是否是完美整数。输入参数:一个整数 。实现逻辑:将整数 转换为字符串形式 。获取字符串的第一个字原创 2024-11-19 22:44:17 · 593 阅读 · 0 评论 -
豆包MarsCode算法题:最大异或和计算
定义f(a)为数组a的总和,f(b)为数组b的总和。,其中a'和b'分别是删除一个元素后的数组。我们需要找到所有可能的XOR值中的最大值。原创 2024-11-19 08:15:00 · 784 阅读 · 0 评论 -
豆包MarsCode算法题:小U的加法魔法
初始情况下,数组的总和为所有元素的简单相加:我们可以选择a[i]a[i+1],将它们的加法替换为乘法:这里的是:因此问题就转化为:在所有可能的increment中,找到最大的一个,并将其加入到初始总和中。原创 2024-11-17 23:32:46 · 771 阅读 · 0 评论 -
PTA编程题:连续因子
从 开始(因为 不算),依次枚举每个可能的因子 ,直到对于每个起始因子 ,尝试连续乘积:代码分析1. 初始化变量定义::输入的正整数,使用 类型以支持较大的数值范围。:记录当前找到的最长连续因子序列的长度,初始值为 0。:记录最长序列的起始因子,初始值为 0。2. 遍历可能的起始因子遍历 从 开始,到 为止(包括 ),因为连续因子乘积增长较快,超过 的因子不可能构成有效序列。3. 计算连续因子的乘积变量初始化:条件:原创 2024-11-17 08:00:00 · 1932 阅读 · 4 评论 -
PTA编程题:打印沙漏
一个沙漏的符号总数为:公式解释:上半部分的符号行数是从k到1,总数是2 × k - 1。下半部分的符号行数是从2到k,总数是2 × k - 1。最终,总符号数为:其中k是沙漏上半部分的最大行符号数的行数。原创 2024-11-16 17:14:08 · 1110 阅读 · 0 评论 -
豆包MarsCode算法题:小U的矩阵转置计算
n:矩阵的大小(行和列数)。a:一个n × n的二维列表,表示输入矩阵。原创 2024-11-16 16:34:30 · 351 阅读 · 0 评论 -
豆包MarsCode算法题:游戏排名第三大的分数
去重:将分数数组去重,得到一个不重复的分数集合。排序:对去重后的分数进行排序,按照从大到小的顺序排列。选择目标分数如果有 3 个或更多不同的分数,返回第三大的分数。如果有 2 个或更少不同的分数,返回最大的分数。原创 2024-11-15 09:30:00 · 1743 阅读 · 0 评论 -
PTA编程题:求整数段和
如果从A到B的整数总数不是5的倍数,那么最后一行可能不足5个整数。需要在循环结束后检查count的值,如果count不为0,则输出一个换行符。原创 2024-11-14 13:28:48 · 1555 阅读 · 0 评论 -
PTA编程题:念数字
我们要把一个整数转换为其各个数字的拼音,并且处理负数的情况。在处理时,整数的每一位都需要转换为对应的拼音。如果是负数,我们首先输出“fu”,然后再处理剩下的数字。对于负数的处理,我们直接输出“fu”,并将其转换为正数进行后续操作。将整数转换为字符串是为了方便逐位访问数字,并且字符串处理在 C 语言中也比较直接。使用条件判断来避免在最后一个拼音后输出空格,这个判断通过。实现,确保只有非最后一个拼音后才添加空格。函数获取字符串的长度,以便控制输出格式。函数将整数转为字符串,并且通过。原创 2024-11-14 00:32:51 · 1089 阅读 · 0 评论 -
PTA编程题:考试座位号
/ 准考证号,多一个字符用于存储字符串结束符'\0'// 试机座位号// 考试座位号} Student;这里定义了一个名为Student的结构体,用来存储考生的信息。每个考生有以下字段:id:一个长度为 17 的字符数组,用来存储准考证号。16 个数字 + 1 个结尾字符\0。trial_seat:存储试机座位号,类型是int。exam_seat:存储考试座位号,类型也是int。原创 2024-11-13 23:55:58 · 905 阅读 · 0 评论 -
豆包MarsCode算法题:数组元素之和最小化
这个公式的时间复杂度是 O(1),只需要常数时间即可计算出结果。:为了尽可能使数组元素之和最小,我们选择最小的。默认会返回浮动类型,而我们这里需要整数结果)。来确保计算结果为整数(在 Python 中,该公式计算的是从 1 到。因此,数组的最小和就是。原创 2024-11-13 21:26:38 · 1198 阅读 · 0 评论 -
PTA编程题:个位数统计
其他数字的计数保持为 0。原创 2024-11-13 17:16:01 · 1918 阅读 · 0 评论 -
豆包MarsCode算法题:找单独的数
这道题的目标是找到数组中只出现了一次的数字,其余的数字均出现了两次。由于题目要求时间复杂度为O(n),并且要求尽量减少额外空间的使用,因此我们可以考虑使用位运算来解决这个问题。原创 2024-11-13 00:24:36 · 1058 阅读 · 0 评论