
CSP刷题历程
文章平均质量分 52
由于本人实力较菜,因此此专栏仅记录T1-T3
笨笨sg
NEU-CS
展开
-
Acwing算法基础课+CSP部分题解
以Acwing的“算法基础课’为路线进行视频学习,然后配合洛谷、蓝桥杯题单、CSP真题前三道进行刷题。记录蓝桥杯(PythonA组)和CSP(3月或6月)的备考历程。原创 2024-02-28 19:53:15 · 954 阅读 · 0 评论 -
2022-09-3 防疫大数据
【代码】2022-09-3 防疫大数据。原创 2024-03-30 20:57:40 · 337 阅读 · 0 评论 -
2022-09-1 如此编码
【代码】2022-09-1 如此编码。原创 2024-03-30 19:35:42 · 195 阅读 · 0 评论 -
2022-09-2 何以包邮?
本题的背景则是每本书都有各自的价格,需要我们求解在凑够 x 元包邮的前提下花费最小。怎么转化为上述0-1背包求解最大值的问题呢?只需要将"凑够x元"变为"不超过书本总价-x元",然后我们的目标就变为"在不超过书本总价-x元的前提下使得选出的书本的价值最大"。0-1背包问题是“有一堆物品,每个物品都有各自对应的价值和体积,现在要把这些物品装入一个具有额定容量的背包中,我们需要找出最好的装入计划:在不超过背包容量的前提下使得背包的中的物品价值最大”。本题的技巧是将题面转换为经典的0-1背包问题。原创 2024-03-30 19:54:42 · 311 阅读 · 0 评论 -
202402-1 词频统计
用一维数组存储每个单词出现的频率;用二维数组存储每个单词在每个文章中是否出现。原创 2024-05-30 22:57:38 · 205 阅读 · 0 评论 -
202312-4 宝藏
采用暴力只拿了35分。原创 2024-05-31 22:29:08 · 609 阅读 · 0 评论 -
202402-3 化学方程式配平
本题属于经典的模板题——原创 2024-05-30 23:09:25 · 407 阅读 · 0 评论 -
202402-4 十滴水
这样在某个>=5的结点发生爆炸后,我们便不需要循环遍历,直接通过链表获得左侧和右侧满足条件的结点即可,同时修改左右结点的左右指针,进行重定向。其余的按照题意模拟即可,注意不能循环遍历满足条件的点,否则部分测试点会T。也可以参考Pujx大佬的博客:用。原创 2024-05-30 23:21:17 · 395 阅读 · 0 评论 -
202312-5 彩色路径
直接用暴力dfs做的,但是不知道哪里错了,测试点全WA,0分。原创 2024-06-01 16:07:03 · 348 阅读 · 0 评论 -
202402-2 相似度计算
【代码】202402-2 相似度计算。原创 2024-05-30 23:00:31 · 170 阅读 · 0 评论 -
202402-5 文件夹合并
第5题已经远远超出了本人的能力范畴,因此本题只采用。原创 2024-05-31 16:35:46 · 342 阅读 · 0 评论 -
2022-12-1 现值计算
【代码】2022-12-1 现值计算。原创 2024-03-29 11:08:29 · 177 阅读 · 0 评论 -
202312-1 仓库规划
当然也可以通过对仓库的维度进行排序,进而减少比较次数,这样子可以实现一定程度的优化,但需要开辟一个数组用来获取排序前某个元素所在的原始下标与排序后其所在的新下标的映射关系。首先分析复杂度,如果采用暴力求解,时间复杂度总共为O(m*n^2)=>10^7,而在竞赛中,一般算机一秒能运行5 x 10^8次汁算,因此完全可以采用暴力求解(两层循环)注意在多种可选择上级仓库的情况下,要选择排序前仓库编号最小的,而不是排序后仓库编号最小的。原创 2024-03-22 08:56:08 · 367 阅读 · 0 评论 -
2023-05-3 解压缩
因为每2位是1bit,所以最好不要直接采用字符串求解,可以先将每个bit转换为十进制整数再进行位运算更简洁。本题题面较为复杂,但是在准确把握题意的情况下会用位运算即可AC。可参见Pujx:(orz)原创 2024-03-25 14:55:43 · 322 阅读 · 0 评论 -
2022-12-3 JPEG 解码
同时每个斜线的元素个数也可由8 - abs(b - 9)得到,然后就可以根据b是奇数还是偶数确定是从上向下还是从下向上,然后先确定y的初始坐标,如果b是奇数的话,y = 8 - max(9 - b, 0);否则y = 8 - max(9 - b, 0) -(8 - abs(i - 9)) + 1 = abs(i - 9) + 1 - max(9 - i, 0)即可,确定y后,x=b-y。①碰到y轴或者x1轴(y==7)改变方向。原创 2024-03-29 17:19:42 · 721 阅读 · 0 评论 -
2023-05-1 重复局面
直接用map<string,int>做映射即可,原本觉得unordered_map时间开销会更小,但实践证实了本题采用map更优。原创 2024-03-25 14:02:51 · 170 阅读 · 0 评论 -
202312-2 因子化简
【代码】202312-2 因子化简。原创 2024-03-22 09:01:17 · 369 阅读 · 0 评论 -
2023-03-2 垦田计划
维护一个数组用于存储"第i块区域开垦耗时-缩短 1 天所需资源数量",然后逆序遍历,如果当前资源可以维持当前最大开垦耗时区域的优化资源(缩短该区域开垦时间 1 天所需资源数量),那么就消耗,然后当前的缩短 1 天所需资源数量加到下一个最大开垦耗时区域的优化资源中即可,直到m耗尽或者减到k(最小开垦耗时)即可。初始:5-1, 6-(2+1), 7-1 m:9。原创 2024-03-27 22:50:58 · 345 阅读 · 0 评论 -
2023-9-3 梯度求解
比如如果现在某一个式子是关于x1和x2的函数y,那么在求y对x1的偏导数时,x2就可以视为常量,因此为了方便处理,我们在将后缀转中缀的过程中直接将“无关变量x2”的值代入即可。因为公式本身就是一个关于x1的各种次方项的加和,因此不妨在后缀转中缀的过程中直接将公式用数组表示,数组下标idx代表的是当前项中x1的次方,其中的元素则为当前项的系数,等得到了这个最终公式后,直接按照求导公式求解即可。假设存在一个空栈S,依次读取逆波兰式的每一个元素,若读取到的是变量或常量,则将其压入 S中;原创 2024-03-24 15:20:16 · 395 阅读 · 1 评论 -
2022-12-2 训练计划
对于求解链表上每个结点的最早开始时间,只需要从邻接表的头部遍历到尾部即可,若到达了尾部后其时间开销已经超过了最大训练天数,则表示在开赛前无法完成所有科目,直接退出即可。若是可以满足其时间开销,则只需要进行逆操作,但是得额外维护一个回溯的最大值(多个孩子结点往父节点回溯的情况)。拓扑排序的思路和上述的dfs其实是一致的,如果某个科目i依赖于j,也就是从j到i存在一条有向边,那么分别定义一个存储结点入度和出度的数组,然后开辟一个队列,入度是要用于从头开始向尾部遍历用,出度则是反过来从尾部向头部遍历用。原创 2024-03-29 16:17:26 · 298 阅读 · 0 评论 -
2023-05-2 矩阵运算
可以分析一下复杂度,本题如果按照公式的矩阵乘法顺序,O(n^2*d),大概是2*10^9,会T。与V的矩阵乘,然后再执行Q与其的矩阵乘即可,这样复杂度就是O(d^2*n)注意:矩阵的点乘运算任何时候执行都可以,只要保证维度匹配即可。可参见Pujx:(orz)原创 2024-03-25 14:41:03 · 266 阅读 · 0 评论 -
2023-9-2 坐标变换(二)
题目中给出了上述两种操作,由于操作序列中这2种操作会交替出现,既会涉及到乘法也会涉及到加法,表面上看起来似乎没有办法通过“前缀”的形式进行求解。那么经过一系列从i到j的操作变换,最后的坐标该怎么求呢?从操作1到操作i的拉伸得到的一个坐标其实就是将坐标扩大了。但其实,可以将上述两种操作统一为一种操作,“拉伸k倍”可以视为“拉伸k倍,旋转0°”,“旋转。°”,因此其实每个操作都可以视为拉伸与旋转的结合。旋转操作同理,只是将乘法换为加法即可。,那么从1到操作j的拉伸无非就是扩大了。,因此从i到j的拉伸倍数为。原创 2024-03-24 15:05:53 · 418 阅读 · 0 评论 -
2023-9-1 坐标变换(一)
【代码】2023-9-1 坐标变换。原创 2024-03-24 14:50:30 · 214 阅读 · 0 评论 -
2023-03-3 LDAP
后来在网上看了不少博客,大多数都是采用bitset的做法,对于每个表达式中的逻辑表达式,不断递归拆分,拆分为2个基础表达式,然后分别求满足这2个基础表达式的用户,然后再回溯分别求交集或者并集即可,这样子就不需要对每个表达式都遍历一遍用户列表。本来我的想法是对于每个表达式,都遍历一次用户判断是否满足该表达式,但最后超时了,只得了70分。原创 2024-03-28 12:03:06 · 544 阅读 · 0 评论 -
2023-03-1 田地丈量
【代码】2023-03-1 田地丈量。原创 2024-03-27 22:39:56 · 170 阅读 · 0 评论 -
202312-3 树上搜索
注意“向用户询问名词是否属于该类别”这个操作,并不是简单的判断idx和query是否相等,而是看当前的idx是否在以query为根节点所在的子树中。原创 2024-03-22 09:33:17 · 653 阅读 · 0 评论