2025年9月算法好题集锦

Codeforces:

题目链接 难度分 Tag 题解 学到的东西
CF1900D 2000 数论、容斥 --- 学习去掉倍数的重复情况
CF141D 2300 DP、最短路 --- 从要求的结果来看,这是一个求最短路的问题,但又可以用DP去做。真正操作起来,发现真用DP做起来转移比较麻烦(涉及到往回走),所以可以考虑直接建图跑最短路算法
CF164A 1700 两遍DFS --- 图论题容易想当然,在可能有环的图上执行一个算法时,需要多造一些包含环的样例,并模拟一些不同的DFS顺序
CF102861I 约1800 树形DP、乘法逆元、前后缀分解 --- 正确做法是前后缀分解去维护子树的乘积,如果用乘法逆元的话,可能会遇到dp值为0的问题。我们脑子里仍然要把乘法逆元认为是除法,这样就不会忘记0没有逆元这个事实

AtCoder:

其他题目:

题目链接 难度 Tag 题解 学到的东西
洛谷P5676 绿 强连通分量 --- 边界情况判错了,当本题的有趣度是自己的兴奋度的倍数时,可以循环做本题,而不是相等,如果判错了会丢掉 40 分!另外如果没有样例提示能单点成环也算的话,可能会直接得 0 分!
牛客周赛108F 2000分 位运算、SOSDP、超集枚举 --- 一个新知识点,要求某个数所有超集的某个值,无需枚举其所有超集,只需要枚举比其多一个set位的集合即可
洛谷P4832 绿 带偏移量的DP、滚动数组 --- 复习了一下这两个东西,有段时间没遇到了
牛客周赛109F 1800分 推式子、离散化、树状数组、离线 --- 利用条件,发现要求的是 yimin(xi+k1,xi+k2)y_i \le \min(x_i + k_1, -x_i + k_2)ii 的个数,不难想到讨论两个东西在什么情况下最小,然后就可以把 min\min 去掉求解了

看到的好文章:

赞赏