自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

原创 差分数组原理

从 [0, 0, 0, 0, 0, 0] 变成 [0, 1, 1, 1, 0, 0]在位置 5(即 r+1),我们要结束+1:diff[5] -= 1。还原后的原数组 a: [0, 1, 1, 1, 0, 0]在位置 2,我们要开始+1:diff[2] += 1。

2025-05-09 10:31:34 219

原创 560. 和为 K 的子数组 53. 最大子数组和 --前缀和

第一行包含两个整数n和m。第二行包含n个整数,表示整数数列。接下来m行,每行包含两个整数l和r,表示一个询问的区间范围。1≤l≤r≤n, 1≤n,m≤100000, −1000≤数列中元素的值≤1000。sum[0] = 0;//sum[i] = 前i项和。对于每个询问,输出原序列中从第l个数到第r个数的和。共m行,每行输出一个询问的结果。接下来再输入m个询问,每个询问输入一对l, r。输入一个长度为n的整数序列。

2025-05-08 20:03:29 357

原创 C++常用库函数和容器总结

vector 用于动态数组,支持随机访问。map 用于存储键值对,自动排序。set 用于存储唯一的元素,自动排序。queue 用于先进先出的队列操作。stack 用于后进先出的栈操作。

2025-01-07 09:46:31 382

原创 matplotlib中文字体 graphviz中文字体

【代码】matplotlib中文字体 graphviz中文字体。

2024-12-22 14:19:00 294

原创 枚举控制单边变量降重-1014. 最佳观光组合

【代码】枚举控制单边变量降重-1014. 最佳观光组合。

2024-09-23 18:10:51 219

原创 双指针--88. 合并两个有序数组

注意,因为 m = 0 ,所以 nums1 中没有元素。nums1 中仅存的 0 仅仅是为了确保合并结果可以顺利存放到 nums1 中。,5,6] ,其中斜体加粗标注的为 nums1 中的元素。闭眼做法:时间复杂度O( (m+n)log(m+n) )最终,合并后数组不应由函数返回,而是存储在数组。需要合并 [1,2,3] 和 [2,5,6]。需要合并的数组是 [] 和 [1]。个元素表示应合并的元素,后。需要合并 [1] 和 []。中,使合并后的数组同样按。合并结果是 [1]。的算法解决此问题吗?

2024-09-12 10:30:43 372

原创 双指针-125. 验证回文串

如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。isalnum用来判断一个字符是否为数字或者字母,也就是说判断一个字符是否属于a~ z||A~ Z||0~9。islower()用来判断一个字符是否为小写字母,也就是是否属于a~z。isupper()和islower相反,用来判断一个字符是否为大写字母。"amanaplanacanalpanama" 是回文串。在移除非字母数字字符之后,s 是一个空字符串 ""。由于空字符串正着反着读都一样,所以是回文串。

2024-09-11 17:00:45 434

原创 贪心 or 逆向思维--55. 跳跃游戏

无论怎样,总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。从后往前 将到末尾的距离转化为下一个元素到当前元素的距离。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回。给你一个非负整数数组。

2024-09-11 15:57:59 420

原创 原地旋转数组--189. 轮转数组

向右轮转 1 步: [99,-1,-100,3]向右轮转 2 步: [3,99,-1,-100]进阶:空间复杂度如何达到O(1)呢?,将数组中的元素向右轮转。

2024-09-10 16:27:56 411

原创 摩尔投票算法--169. 多数元素

时间复杂度:O(n),只需遍历数组一次。空间复杂度:O(1),只用到了固定数量的变量。

2024-09-10 16:00:27 697

原创 滑动窗口--2024. 考试的最大困扰度

或者我们可以将第二个 'F' 换成 'T' ,得到 answerKey = "TTF。或者,我们可以将第二个 'T' 换成 'F' ,得到 answerKey = "T。我们可以将最前面的 'T' 换成 'F' ,得到 answerKey = "我们可以将两个 'F' 都变为 'T' ,得到 answerKey = "我们可以将第一个 'F' 换成 'T' ,得到 answerKey = "两种情况下,都有三个连续的 'F'。两种情况下,都有五个连续的 'T'。总共有四个连续的 'T'。

2024-09-09 19:40:15 462

原创 双指针--977. 有序数组的平方

双指针,因数组是从负到正数,利用双指针对比两头的平方,哪个大哪个加入ans。如何在遍历过程中实现排序呢?--在遍历过程中实现排序。平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]排序法:时间复杂度O(nlogn)思考:如何降低时间复杂度?组成的新数组,要求也按。终止条件是双指针相遇。

2024-09-09 09:58:33 230

原创 单调栈--503. 下一个更大元素 II

是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。第二个 1 的下一个最大的数需要循环搜索,结果也是 2。第一个 1 的下一个更大的数是 2;数字 2 找不到下一个更大的数;比这个大的下一个数---单调栈。最后resize下即可。

2024-09-05 16:02:53 287

原创 单调栈--496. 下一个更大元素 I

且a元素需要在数组1中出现过-----------使用单调栈思路。- 2 ,用加粗斜体标识,nums2 = [1,3,4,- 4 ,用加粗斜体标识,nums2 = [1,2,3,如果不存在下一个更大元素,那么本次查询的答案是。- 4 ,用加粗斜体标识,nums2 = [1,3,不存在下一个更大元素,所以答案是 -1。- 2 ,用加粗斜体标识,nums2 = [1,不存在下一个更大元素,所以答案是 -1。不存在下一个更大元素,所以答案是 -1。- 1 ,用加粗斜体标识,nums2 = [

2024-09-05 15:10:31 479

原创 栈思路 使用string模拟--3174. 清除数字

直接对string字符串pop_back()、push_back(),从而避免从真实栈中读数据需要reverse的情况。请你返回删除所有数字字符以后剩下的字符串。直接用栈,最后需要进行一个reverse。一眼栈,关键在于利用栈的思路。你的任务是重复以下操作删除。

2024-09-05 09:41:32 398

原创 单调栈--739. 每日温度

单调栈的主要作用在于保持栈内温度的单调递减,帮助快速找到并计算每一天遇到更高温度的等待天数,从而显著提高算法的效率。初始化创建一个栈st来存储尚未找到更高温度的天的索引。获取温度列表的长度n,并初始化结果数组ans,长度为n,初始值全为 0。遍历温度列表对每个温度,依次进行处理。如果栈不为空且当前温度大于栈顶索引对应的温度弹出栈顶索引,计算从该天到第i天所等待的天数,并将其存入结果数组ans对应的位置。继续检查栈内的其他元素,直到栈为空或栈顶元素的温度不小于当前温度。将当前天的索引i。

2024-09-04 16:52:17 521

原创 数学题--2860. 让所有学生保持开心的分组方法数

判断当前的值是否小于cnt 后一个值是否大于cnt 满足就是一组结果。如果班主任仅选中一个学生来完成分组,那么两个学生都无法保持开心。没遍历到的人数接位没选的人数 它们的nums值要大于cnt。遍历到的人数就为备选的人数 它们的nums值要小于cnt。情况二:都选 看最后一个数是不是小于n 小于n 就是一种情况。班主任选中下标为 1、2、3、6 的学生形成一组。返回能够满足让所有学生保持开心的分组方法的数目。班主任选中下标为 1 的学生形成一组。班主任选中所有学生形成一组。班主任选中所有学生形成一组。

2024-09-04 15:00:52 428

原创 特殊情况考虑-2708. 一个小组的最大实力值

一种构成最大实力值小组的方案是选择下标为 [0,2,3,4,5] 的学生。实力值为 3 * (-5) * 2 * 5 * (-9) = 1350 ,这是可以得到的最大实力值。选择下标为 [0, 1] 的学生。得到的实力值为 20。我们没法得到更大的实力值。,它表示一个班级中所有学生在一次考试中的成绩。老师想选出一部分同学组成一个。请你返回老师创建的小组能得到的最大实力值为多少。最大,如果这个小组里的学生下标为。,那么这个小组的实力值定义为。

2024-09-03 15:41:54 388

原创 DP-343. 整数拆分

,并使这些整数的乘积最大化。你可以获得的最大乘积。

2024-08-30 14:19:37 336 1

原创 头歌 112、删除重复字母

请你去除字符串中重复的字母,使得字符串中的字母都只出现一次,保证返回结果字典序最小。(要求不能打乱字符串中其他字符的相对位置)第一行输入一个字符串。

2024-03-14 17:12:06 503

原创 CCF CSP试题编号: 201903-2试题名称: 二十四点

【代码】CCF CSP试题编号: 201903-2试题名称: 二十四点。

2024-03-13 20:04:18 473

原创 CCF CSP试题编号: 202312-2试题名称: 因子化简

题目中提到关键词素数 我们可以尝试求一下1000以内的素数 足以表示数据。将素数存入数组 即可以按照题目要求编写代码。

2024-03-12 20:16:48 547

原创 CCF CSP试题编号: 202303-2试题名称: 垦田计划

【代码】CCF CSP试题编号: 202303-2试题名称: 垦田计划。

2024-03-12 16:20:32 355

原创 CCF CSP试题编号: 202209-1试题名称: 如此编码

【代码】CCF CSP试题编号: 202209-1试题名称: 如此编码。

2024-03-12 14:37:31 427

原创 CCF CSP试题编号: 201803-2试题名称: 碰撞的小球

【代码】CCF CSP试题编号: 201803-2试题名称: 碰撞的小球。

2024-03-11 19:38:39 386

原创 CCF CSP 试题编号: 202112-1试题名称: 序列查询

【代码】CCF CSP 试题编号: 202112-1试题名称: 序列查询。

2024-03-11 16:20:38 396

原创 CCF CSP试题编号: 202203-1试题名称: 未初始化警告

【代码】CCF CSP试题编号: 202203-1试题名称: 未初始化警告。

2024-03-11 16:06:57 363

原创 头歌 排号报数

再报数,直到只剩下一个人,问最后留下的是原来第几号的那个人。有 N 个人绕成圆圈,按照顺序排号 (一个整数,代表最后剩下的人是几号。做好记录 按要求模拟即可 没有难点。的人淘汰,接下来的人又从。的整数,代表总共有多少人。-N) ,第一个人从。

2024-03-10 16:33:47 450

原创 头歌 426、打水

从小到大的顺序依次分配到M个龙头打水。例如样例中,Ti从小到大排序为。,请安排一个合理的方案使得所有人的等待时间之和尽量小。最小的等待时间之和。(不需要输出具体的安排方案)第一个龙头打水的人总等待时间 =第二个龙头打水的人总等待时间 =第三个龙头打水的人总等待时间 =一种最佳打水方案是,将N个人按照。个龙头,则去龙头一打水的为。所以总的等待时间 =去第三个龙头打水的为。

2024-03-10 15:57:50 369

原创 头歌 蚂蚁王国

众所周知,蚂蚁是一种十分神奇的生物,在算法设计中,我们往往能从它身上得到启发,例如在求解TSP问题中,就有一种模仿蚂蚁行为方式而设计出的蚁群算法。他们沿着X轴爬行,有的向左,有的向右,爬行的速度是一样的,两只蚂蚁相遇时,大一点的蚂蚁会吃掉小一点的(假设吃掉的时间可以忽略不计)。第一组中只有1只蚂蚁,大小为1,向右爬行。第2到N+1行:每行两个数 Ai,Bi (1≤Ai≤N,Bi∈{0,1}),中间用一个空格分隔,分别表示蚂蚁的大小以及爬行的方向,Bi=0 表示向左,Bi=1 表示向右。

2024-03-10 15:28:07 611

原创 头歌 蚂蚁王国

众所周知,蚂蚁是一种十分神奇的生物,在算法设计中,我们往往能从它身上得到启发,例如在求解TSP问题中,就有一种模仿蚂蚁行为方式而设计出的蚁群算法。他们沿着X轴爬行,有的向左,有的向右,爬行的速度是一样的,两只蚂蚁相遇时,大一点的蚂蚁会吃掉小一点的(假设吃掉的时间可以忽略不计)。第一组中只有1只蚂蚁,大小为1,向右爬行。第2到N+1行:每行两个数 Ai,Bi (1≤Ai≤N,Bi∈{0,1}),中间用一个空格分隔,分别表示蚂蚁的大小以及爬行的方向,Bi=0 表示向左,Bi=1 表示向右。

2024-03-10 15:27:31 636

原创 CCFCSP试题编号: 202009-2试题名称: 风险人群筛查

根据数据规模不难发现,本题对时间复杂度要求较小,大胆硬解,不优化也能100分。

2024-03-08 20:18:38 351

原创 CCFCSP试题编号: 202006-2试题名称: 稀疏向量

【代码】CCFCSP试题编号: 202006-2试题名称: 稀疏向量。

2024-03-08 18:16:13 374

原创 CCFCSP试题编号: 202312-1试题名称: 仓库规划

数据量级没那么bt 直接暴力即可。

2024-03-08 16:55:57 469

原创 岛屿问题 CCFCSP 试题编号: 202109-2试题名称: 非零段划分

【代码】CCFCSP 试题编号: 202109-2试题名称: 非零段划分。

2024-03-08 15:40:58 846

原创 ccf csp202012-2 期末预测之最佳阈值

备注:可以手动模拟一下,发现两个相同的yi取第一个计算就行。

2024-03-08 11:15:35 404

原创 CCF CSP试题编号: 202006-1试题名称: 线性分类器

【代码】CCF CSP试题编号: 202006-1试题名称: 线性分类器。

2024-03-08 10:56:28 409

原创 CCF CSP试题编号: 201403-2 试题名称:窗口

CCF CSP试题编号: 201403-2 试题名称:窗口

2024-03-07 19:34:14 464 1

原创 CCF CSP试题编号: 202203-2试题名称: 出行计划

找重叠区间--差分秒了。

2024-03-07 18:52:11 785

原创 CCF CSP试题编号: 201809-2试题名称: 买菜

【代码】CCF CSP试题编号: 201809-2试题名称: 买菜。

2024-03-07 18:47:11 469

空空如也

空空如也

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

TA关注的人

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