第四十二天(5.9)
所花时间(包括上课): 约 7 小时(毛概 1.5h + 算法专项练习 3.5h + 模板复写与错题回顾 2h)
代码量(行): 约 300 行(动态规划专项练习、图论模板复写、部分蓝桥杯省赛真题回顾)
博客量(篇): 1 篇
了解到的知识点:
毛概(思想政治教育):踏实心态 —— 课上一次讨论提到“行百里者半九十”,越到收尾阶段越要稳住。现在离蓝桥杯国赛还有一段时间,正好是容易松懈的时候,需要保持每天至少几道题的手感,不贪多但求稳。
DP 常见模型梳理: 今天集中练了几道蓝桥杯风格的动态规划题,复盘了 01 背包完全背包的滚动数组优化写法、最长公共子序列的递推推导,以及一道用前缀和优化区间 DP 的题目。手推状态转移方程比死记硬背模板管用得多。
图论模板复写与细节打磨: 闭卷重写了 Dijkstra(邻接表 + 优先队列)、SPFA 判负环、以及拓扑排序的模板。特别注意了初始化距离数组时用 memset 的坑(0x3f 技巧),以及无向图开边数组要乘 2 的老问题。
审题与边界条件敏感性: 练习时差点踩坑:一道题输入描述里写了“多组测试数据”,我习惯性只读了一组就 break 了。这种低级错误放到正式比赛里会直接零分,必须养成读完输入格式说明画红线的习惯。
总结:
今天照常上了毛概课,回到机房后继续按计划推进蓝桥杯国赛的备考。没有刻意去啃难题,重点放在 DP 常见模型的熟悉和基础图论模板的巩固上。练习时发现一个读题疏忽差点导致整题白写,幸好及时发现,算是给自己提了个醒。接下来的日子继续保持这个节奏,把基础分拿稳,比什么都强。
表 3 缺陷记录日志示例
学生: 马昀昀_________
日期: 5.9_______
程序号: 日常训练_DP 初始化与多组输入
日期: 5.9
编号: 1
类型: 10
引入阶段: 编码
排除阶段: 本地测试
修复时间: 10min
修复缺陷:
描述: 写一道 DP 题目时漏看了题目开头的“输入包含多组测试数据”,代码里只处理了一组就 return 0。本地跑样例正常,但心里不踏实又瞟了一眼题面才发现问题。
修复方法: 以后读题时强制自己先通读一遍输入输出格式,重点圈出“多组数据”“文件结束符”等字眼;模板代码里统一改成 while(cin >> n) 或 while(scanf(...) != EOF) 的外层循环结构。
