- 博客(75)
- 收藏
- 关注
原创 CSP 第3题训练 Day 5|CSP202509C HTTP 头信息|Blog A
题目:CSP202509C HTTP 头信息。写码前保证分:40 分。写码前目标分:40 分。二、写码前规格压缩卡。
2026-09-04 22:24:30
218
原创 CSP 第3题训练 Day 4|CSP202305C 解压缩|Blog A
对于 20% 的数据,解压后的长度不超过 1024 字节,只包含字面量,并且每个字面量长度不超过 60。除了最后一个字节的最高位为 0, 其余字节的最高位为 1,开始没有提取到这句话,不知道导引域什么时候结束。CSP 第3题训练 Day?数据域:由若干个元素组成,元素可能是字面量,也可能是回溯引用。题目输入的是十六进制字符,每两个字符才表示一个字节。根据元素首字节的高 6 位得到字面量长度;默认数据域中的所有元素都是字面量;因此写码前保证分定为 20 分。写码前保证分:20 分。写码前目标分:20 分。
2026-09-04 21:50:06
180
原创 CSP 第3题训练 Day 3|CSP202506C 消息解码|Blog A
本题题面较长,涉及普通数字表示、典型代号的短数字表示、散列值、简单消息、复杂消息以及历史消息推断等多个部分。用典型代号短数字表示这一特殊性质。这样暂时不需要处理散列值推断、历史消息记录以及复杂消息。我先看了子任务,决定只完成 30 分版本。我选择先处理简单消息,并利用双方代号都采。题目:CSP202506C 消息解码。因此写码前先保证 30 分。二、写码前规格压缩卡。
2026-09-04 21:22:33
243
原创 CSP 第3题训练 Day 2|CSP202104C DHCP 服务器|Blog A
Day:8/27题目:DHCP 服务器写码前保证分:20首次分数:2018:00前分数:20。
2026-09-04 18:52:59
76
原创 CSP 第3题训练 Day 1|CSP202409C 补丁应用|Blog A
后来发现,对于我当前实现的新文件生成过程,只需要保存 + 开头的新增行和空格开头的不变行,因为它们共同组成了修改后的新文件片段。最后只需要把原文件第 NN 行之前的内容、修改后的新片段,以及跳过原文件中对应 MM 行之后剩余的内容依次拼接起来,就可以得到修改后的文件。2. 题意理解错误:一开始以为从第 NN 行开始的 MM 行都需要逐行修改,后来发现 MM 表示的是该补丁块在原文件中涉及的总行数,其中可以包含没有发生变化、仅用于提供上下文的行。A:补丁只有一个块,并且没有注释;开始时间:15:30。
2026-08-26 18:17:23
192
原创 8.25第二题训练
模块:前缀和思想 + 预处理类型:区间排除查询 / 左右最大值维护目标:每天有一个不可用区间 [L,R],求剩余房间中人数最大的房间容量。
2026-08-25 22:49:55
160
原创 P2904 [USACO08MAR] River Crossing S 题解复盘
dp [ i ]已经把前 i 头牛全部运到对岸的最少时间。dp[3]3头牛全部已经在对岸所需的最少时间。假设:最后一批之前,j头牛前j头牛↓最优时间:dp[j]此时 FJ 在对岸。如果还剩牛,+mi-j头牛+cost[i-j]dp[i]min(dp[i],i=5j=3说明:前 3 头牛已经过去了。5-3=2头牛cost [ 2 ]cost [ 5 ]普通线性DP本题dp[i]由前一个状态转移dp[i]枚举所有前驱dp[j]固定最后一步最后一批大小不固定O(n)O(n²)
2026-08-22 23:13:03
189
原创 P1509 找啊找啊找朋友 题解复盘
普通01背包本题一个费用两个费用(预算、点数)一个目标两个目标(数量、时间)dp存一个值dp存一个结构体比较大小自定义比较规则。
2026-08-22 23:10:21
157
原创 P2663 越越的组队 题解复盘
能否恰好选 cnt 个人,使成绩和恰好为 sum。能够选3个人成绩和正好180成绩和≤half尽可能大因此:half开始:一直往下找。就是答案。普通01背包本题dp[容量]dp[人数][容量]不关心选几个必须恰好选 k 个一维状态二维状态一个容量倒序两个维度都倒序。
2026-08-21 23:47:19
171
原创 01背包8.21
dp [ j ]总体积恰好为 j 时,需要消耗的最小体力。dp[120]=15表示:总体积恰好为 120,最少需要消耗 15 点体力。总体积至少V恰好VV=10095×110√因此:j<=limit;j++){所有≥V中的最小体力普通01背包本题求最大价值求最小代价容量不能超过 V容量至少达到 V最后看 dp[V]最后枚举所有 ≥V 的状态max()min()dp[j][k]伪装能力不超过 j,工资不超过 k 时,能够获得的最大资料。总伪装能力≤5总工资≤20。
2026-08-21 23:45:53
215
原创 CSP202603B 机器人项目管理 题解复盘
因为:m普通型↓应该拿多少m=10普通型:2灵活型:8普通型:6灵活型:4used<=m;used++)普通型:used↓灵活型:m-used取最大即可。普通背包本题全部01背包01背包 + 分数背包一个DP解决分类处理后合并整体DPDP + 贪心只有整数选择存在部分选择。
2026-08-20 21:50:34
291
1
原创 CSP202603C 操作系统 题解复盘(80分做法)
因为一个进程可能同时拥有多个接口。send p时,每个接口都要发送一个对象。ans = now;普通模拟本题直接维护变量used[] 模拟整段内存单个对象每个进程拥有多个接口普通数组访问扫描连续空闲区间找到可用位置即可Best Fit:选择最短可用区间普通队列循环队列l+cnt%len手动维护编号vector::erase() 自动维护接口编号。
2026-08-20 21:45:08
382
原创 P2800 又上锁妖塔 题解复盘
dp[i]dp [ i ]表示到达第i当前还能不能使用仙术?情况1:刚刚是爬上来的→ 可以继续跳情况2:刚刚是跳上来的→ 不能继续跳后续决策不同,因此这两个状态不能合并。dp[i][0]表示:到达第i层,并且当前可以使用仙术时的最短时间。dp[i][1]表示:到达第i层,并且当前不能使用仙术时的最短时间。到达第n可能是爬上去的dp[n][0]是跳上去的dp[n][1]无论是哪种情况,都已经到达塔顶。当“当前位置”不足以决定后续转移时,就把影响未来的额外信息加入 DP 状态;本题就是用。
2026-08-19 22:52:25
179
原创 P1434 [SHOI2002] 滑雪 题解复盘
dp[x][y]表示:从坐标(x,y)出发,按照严格下降规则能够滑出的最长路径长度。+1题目没有规定必须从某一个固定点开始。所以最长滑坡可能从任何格子开始。i<=R;i++){j<=C;j++){取所有起点中的最大值。dfs + dp,每个状态只计算一次。
2026-08-18 22:05:18
183
原创 区间背包x2
2 3 5 10第1颗:2 -> 3第2颗:3 -> 5第3颗:5 -> 10第4颗:10 -> 2因此第i头 = v[i]尾 = v[i+1]dp[l][r]表示:将区间[l,r]中的所有珠子合并成一颗珠子时,能够获得的最大总能量。左珠子:右珠子:m -> xx -> nm × x × n因为项链是一个环。第1颗开始第2颗开始……第n颗开始任意位置断开。i<=n;i++){看到“环形相邻合并 + 合并顺序影响答案”,想到复制数组做环形区间DP;
2026-08-16 18:07:59
340
原创 区间背包+状态设计
表示:当前形成区间[l,r],并且最后加入的人是左端l。表示:当前形成区间[l,r],并且最后加入的人是右端r。[1,n]左端右端就是最终答案。,分别表示最后加入的是左端还是右端。
2026-08-16 18:01:12
211
原创 二维费用01背包
dp[j][k]表示:在金钱不超过j、时间不超过k的情况下,最多可以完成多少个愿望。dp [ j ]金钱时间dp[j][k]看到“两个容量限制 + 每件物品只能选一次”,想到二维费用 01 背包;定义dp[j][k],两个容量全部倒序枚举。dp[j][k]表示:在体积不超过j、质量不超过k的情况下,能够获得的最大总卡路里。j对应体积,k对应质量。看到“两个容量限制 + 每件物品只能选一次 + 求最大价值”,想到二维费用 01 背包;定义dp[j][k],两个容量全部倒序枚举。
2026-08-15 23:24:43
237
原创 完全背包+编辑距离
dp [ j ]表示:总时间不超过j时能够获得的最大总分。看到"物品可以无限选择",立即想到完全背包;定义dp[j]表示容量为j的最优值,容量正序枚举完成状态转移。dp [ j ]表示:恰好购买j磅干草所需要的最小花费。注意这里不是“不超过 j”,而是“恰好达到 j”。看到“物品无限 + 至少达到目标 + 求最小费用”,想到完全背包的“至少装满”变形:容量正序,状态扩展到目标容量之外,最后对所有j≥H的状态取最小值。dp[i][j]表示:A 的前i个字符和 B 的前j。
2026-08-15 23:21:20
342
原创 01背包复盘
模型状态转移01背包最大价值max()完全背包最大价值max()01背包计数DP方案数+=模型状态转移01背包最大价值max()装箱问题最大已装体积max()
2026-08-14 18:09:00
177
原创 P2758 编辑距离 题解复盘
模型状态转移LCSdp[i][j]max()编辑距离dp[i][j]min()路径DPdp[i][j]从相邻位置转移区间DPdp[l][r]从左右区间转移。
2026-08-13 19:04:56
238
原创 区间dp复盘
模型状态转移路径DPdp[i][j]从相邻位置转移背包DPdp[j]从容量转移LISdp[i]从前面位置转移区间DPdp[l][r]从左右区间转移。
2026-08-13 16:58:00
249
原创 P1439 最长公共子序列 题解复盘
普通LCSP1439二维DP位置映射 + LISO(n²)O(nlogn)任意序列两个排列(无重复)dp[i][j]
2026-08-12 18:33:29
206
原创 P1216 [IOI 1994 / USACO1.5] 数字三角形 题解复盘
摘要:本文分析了P1216数字三角形问题,采用动态规划求解从顶部到底部的最大路径和。状态定义为dp[i][j]表示到达该位置的最大和,转移时考虑左边界、右边界和中间位置的不同情况。实现时注意数组大小需满足r≤1000,最终答案取最后一层最大值。典型路径DP问题特征包括网格/三角形结构、位置依赖和最优解需求,解法时间复杂度O(n²)。
2026-08-10 22:21:44
224
原创 P2878 [USACO07JAN] Protecting the Flowers S 题解复盘
模块:贪心算法目标:安排赶牛顺序,使奶牛吃掉的花最少。
2026-08-05 22:20:39
161
原创 P1209 [USACO1.3] 修理牛棚 Barn Repair复盘
模块:贪心算法目标:使用最多 M 块木板覆盖所有有牛的牛棚,使木板总长度最小。
2026-08-05 22:18:50
161
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅