我从上半年的周赛中精选了部分题目,分类整理后得到了下面的表格(按题号排序),供各位练习/复习时参考。
另外我更新了表中一部分题解,完善了多种解法(例如 2258. 逃离火灾 添加了不用二分的线性做法),且所有题解均包含 Python/Java/C++/Go 四种语言。
| 题目 | 题解 | 难度 | 备注 |
|---|---|---|---|
| 2211. 统计道路上的碰撞次数 | 题解 | 1581 | 脑筋急转弯 |
| 2227. 加密解密字符串 | 题解 | 1944 | 逆向思维 |
| 2242. 节点序列的最大得分 | 题解 | 2304 | 有技巧的枚举 |
| 2306. 公司命名 | 题解 | 视频 | 2305 | 分类讨论 |
| 2317. 操作后的最大异或和 | 题解 | 视频 | 1678 | 位运算 |
| 题目 | 题解 | 难度 | 备注 |
|---|---|---|---|
| 2136. 全部开花的最早一天 | 题解 | 2033 | 邻项交换法 |
| 2141. 同时运行 N 台电脑的最长时间 | 题解 | 2265 | 贪心 |
| 2234. 花园的最大总美丽值 | 题解 | 2561 | 贪心 |
| 2311. 小于等于 K 的最长二进制子序列 | 题解 | 视频 | 1839 | 贪心 |
| 题目 | 题解 | 难度 | 备注 |
|---|---|---|---|
| 2271. 毯子覆盖的最多白色砖块数 | 题解 | 2021 | 双指针 |
| 2302. 统计得分小于 K 的子数组数目 | 题解 | 1808 | 双指针 |
| 题目 | 题解 | 难度 | 备注 |
|---|---|---|---|
| 2141. 同时运行 N 台电脑的最长时间 | 题解 | 2265 | 二分答案 |
| 2251. 花期内花的数目 | 题解 | 2022 | 转换 |
| 2258. 逃离火灾 | 题解 | 2346 | 二分答案 |
| 题目 | 题解 | 难度 | 备注 |
|---|---|---|---|
| 2183. 统计可以被 K 整除的下标对数目 | 题解 | 2246 | 数论 |
| 2245. 转角路径的乘积中最多能有几个尾随零 | 题解 | 2036 | 数论、前缀和 |
| 2281. 巫师的总力量和 | 题解 | 视频 | 2621 | 和式变形、前缀和 |
| 2310. 个位数字为 K 的整数之和 | 题解 | 视频 | 1558 | 同余 |
| 题目 | 题解 | 难度 | 备注 |
|---|---|---|---|
| 2140. 解决智力问题 | 题解 | 1709 | 线性 DP |
| 2167. 移除所有载有违禁货物车厢所需的最少时间 | 题解 | 2219 | 线性 DP |
| 2172. 数组的最大与和 | 题解 | 2392 | 状压 DP |
| 2188. 完成比赛的最少时间 | 题解 | 2315 | 线性 DP |
| 2209. 用地毯覆盖后的最少白色砖块 | 题解 | 2105 | 线性 DP |
| 2218. 从栈中取出 K 个硬币的最大面值和 | 题解 | 2157 | 分组背包 |
| 2246. 相邻字符不同的最长路径 | 题解 | 2126 | 树形 DP |
| 2262. 字符串的总引力 | 题解 | 2033 | 线性 DP |
| 2266. 统计打字方案数 | 题解 | 1856 | 线性 DP |
| 2272. 最大波动的子字符串 | 题解 | 2515 | 线性 DP |
| 2305. 公平分发饼干 | 题解 | 视频 | 1886 | 子集状压 DP |
| 2312. 卖木头块 | 题解 | 视频 | 2363 | 线性 DP |
| 2318. 不同骰子序列的数目 | 题解 | 视频 | 2090 | 线性 DP |
| 2320. 统计放置房子的方式数 | 题解 | 视频 | 1607 | 线性 DP |
| 2321. 拼接数组的最大分数 | 题解 | 视频 | 1790 | 线性 DP |
| LCP 53. 守护太空城 | 题解 | - | 子集状压 DP |
| 题目 | 题解 | 难度 | 备注 |
|---|---|---|---|
| 2157. 字符串分组 | 题解 | 2499 | 哈希并查集 |
| 2163. 删除元素后和的最小差值 | 题解 | 2225 | 堆 |
| 2179. 统计数组中好三元组数目 | 题解 | 2272 | 树状数组 |
| 2197. 替换数组中的非互质数 | 题解 | 2057 | 栈 |
| 2213. 由单个字符重复的最长子字符串 | 题解 | 2628 | 线段树 |
| 2276. 统计区间中的整数数目 | 题解 | 2222 | 珂朵莉树、动态开点线段树 |
| 2281. 巫师的总力量和 | 题解 | 视频 | 2621 | 单调栈 |
| 2286. 以组为单位订音乐会的门票 | 题解 | 视频 | 2470 | 线段树二分 |
| 2289. 使数组按非递减顺序排列 | 题解 | 视频 | 2481 | 单调栈 |
| 2296. 设计一个文本编辑器 | 题解 | 视频 | 1911 | 对顶栈 |
| 题目 | 题解 | 难度 | 备注 |
|---|---|---|---|
| 2127. 参加会议的最多员工数 | 题解 | 2449 | 基环树、拓扑排序 |
| 2146. 价格范围内最高排名的 K 样物品 | 题解 | 1836 | BFS |
| 2172. 数组的最大与和 | 题解 | 2392 | 最小费用最大流 |
| 2203. 得到要求路径的最小带权子图 | 题解 | 2364 | 单源最短路 |
| 2258. 逃离火灾 | 题解 | 2346 | 多源 BFS |
| 2267. 检查是否有合法括号字符串路径 | 题解 | 2084 | DFS |
| 2290. 到达角落需要移除障碍物的最小数目 | 题解 | 视频 | 2137 | 0-1 BFS |
| 2322. 从树中删除边的最小分数 | 题解 | 视频 | 2391 | DFS 时间戳 |
相比往年的周赛,今年上半年,动态规划题略有减少,数据结构题有所增多,去年的数据结构题中经常遇到并查集,今年见到了不少线段树的题目。
不过动态规划依旧是周赛常客,对于目标周赛四题的选手,我仍然推荐将动态规划作为平时练习中的重点。
最后欢迎点赞评论,祝各位周周四题!