【笔记】2022 初赛
在役生涯最后一次复习初赛了,有一点别样的滋味。。。
CSP-S 2021 第一轮
T10 交换相邻元素进行排序的最小操作次数是逆序对数量,因为每次必能找到一个相邻的逆序对,并且每次交换最多使逆序对数量 -1。
T12 。
T13 选 4 个苹果有 5 种方式,数错了。。。
9.16 模拟
阅读程序的数位 DP 实现很妙(其实是之前的写的都太拉跨了):
ll dfs(ll pos, bool limit, bool lead, ll pre1, ll pre2) {
if (!pos) {
return 1;
}
ll ans = 0;
if (!limit && !lead && f[pos][pre1 + 1][pre2 + 1] != -1) {
return f[pos][pre1 + 1][pre2 + 1];
}
ll up = limit ? a[pos] : 9;
for (ll i = 0; i <= up; ++i) {
if (i != pre1 && i != pre2) {
ans += dfs(pos - 1, limit && i == up, lead && !i, (!lead || i) ? i : -1, pre1);
}
}
if (!limit && !lead) {
f[pos][pre1 + 1][pre2 + 1] = ans;
}
return ans;
}
当 !limit && !lead
成立时才进行记忆化,这样根本不影响复杂度,但是就不用记 f[limit][lead]
这两维状态了。
Day 1
看到 O2 发了一个所谓 薄纱主定理 的东西,其实只能验证选项用。初赛全是选择题还是低估您们了。。。
初赛的时间复杂度计算题应该不会出太恶心的东西,以前用画图然后等比数列求和的办法都能做出来。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)