题目列表
可按标题、OJ、标签和启发记录快速筛选题目解析。
| OJ | 题号 | 标题 | 标签 | 难度 | 最后更新 | 解析 |
|---|---|---|---|---|---|---|
1671 | 把五档宇宙速度门槛收进数组,数出速度 v 达标的档数 k,再输出数字前缀串 12...k,k 为 0 时输出 0。 | - | 入门 | 2026-10-06 01:45 | ||
1672 | 通过一次遍历找出二维网格中所有整数的最大值与最小值,计算两者之差即为玉米杆高度差。 | 入门 | 2026-10-06 01:45 | |||
1652 | 线性 DP 计数:按前缀末位性别转移,以牝牛结尾等于总方案数,以牡牛结尾回看 K+1 位之前的总方案数,O(N) 递推取模。 | 普及- | 2026-10-06 01:41 | |||
1663 | 巴什博弈:每步可取 1~K 颗,先手必胜当且仅当 N 不是 K+1 的倍数,O(1) 判定。 | 入门 | 2026-10-06 01:38 | |||
1648 | 二项式定理一步到位:x^n y^m 项系数 = C(k,n)·a^n·b^m mod 10007,组合数 + 快速幂即可。 | 入门 | 2026-10-06 01:38 | |||
1639 | 把三个周期高峰同天写成同余方程组,用中国剩余定理(CRT)求出周期 23×28×33=21252 内的唯一解,再对给定时间做环形减法得到下一次同天的距离。 | 普及 | 2026-10-06 01:36 | |||
1644 | 加权 Fibonacci 和有封闭形式 T(n)=nF(n+2)-F(n+3)+2,先用快速倍增 O(log n) 求出相邻 Fibonacci 对,再一代入公式。 | 普及 | 2026-10-06 01:30 | |||
1641 | 按矩阵乘法定义,三重循环直接计算结果矩阵每个元素。 | 入门 | 2026-10-06 01:29 | |||
1632 | 用扩展欧几里得求 ax + by = 1 的特解,再把 x 取模调到最小正整数解。 | 入门 | 2026-10-06 01:24 | |||
1627 | 辗转相除法求千位大整数的 gcd:手写高精度大整数取模,C++ 实现欧几里得算法。 | 普及- | 2026-10-06 01:24 | |||
1620 | n 恰为两个不同质数之积,较小质因数必不超过 √n,从 2 试除到 ⌊√n⌋ 命中后用 n 除以它即得较大质数。 | 普及- | 2026-10-06 01:22 | |||
1622 | 欧拉筛预处理素数表,每次询问贪心取最小的奇素数 a,并 O(1) 判断 n - a 是否为素数。 | 普及- | 2026-10-06 01:19 | |||
1616 | 指数 b 可达 10^9,用二进制拆分把 a^b 化成若干 a^(2^k) 之积再相乘,Python 三参数 pow 一步完成 O(log b) 模幂。 | 入门 | 2026-10-06 01:04 | |||
1615 | 判型后套用通项:等差 O(1),等比用快速幂 O(log k)。 | 入门 | 2026-10-06 01:04 | |||
1617 | 每轮相当于全体位置编号 +m (mod n),用快速幂求 m·10^k mod n,一步算出答案。 | - | 入门 | 2026-10-06 01:04 | ||
1594 | 把每行压成不超过 48 个合法行状态,按逐列不同色的相容表逐行滚动递推,被固定的第 K 行把计数劈成上下独立两半再相乘。 | 普及 | 2026-10-06 00:55 | |||
1589 | 区间计数先化成前缀计数 f(x),再用 (位置, 是否贴上界, 前一位是否为 6) 三元组状态的记忆化数位 DP 逐位统计不含 4 与 62 的数。 | 普及- | 2026-10-06 00:55 | |||
1597 | 单调队列求滑动窗口最值:队尾淘汰被新元素支配的下标、队首弹出过期下标,队首即窗口答案,两遍 O(N) 扫描输出最小值行与最大值行。 | 普及 | 2026-10-06 00:54 | |||
1547 | 单点加与区间求和交替:树状数组按 lowbit 把前缀和拆成 O(log n) 段,查询两次前缀和相减、修改沿链上跳,初值正序推贡献 O(n) 建树,总 O(n + m log n)。 | 普及- | 2026-10-06 00:50 | |||
1582 | 把人事关系看成一棵树,每个节点记录选与不选两种最优值,自底向上合并,O(N) 求最大欢乐度。 | 普及- | 2026-10-06 00:48 | |||
1577 | 真约数和小于自身就与它连一条无向边,可证建出的图是森林:最多变换步数就是树的直径,筛法建图后每棵树两次 BFS 求直径取最大。 | 普及- | 2026-10-06 00:48 | |||
1575 | 二叉树树形背包:枚举左右子树各保留多少条边完成状态转移。 | 普及 | 2026-10-06 00:48 | |||
1538 | 查询位置单调递增,用一个只前进的指针维护前缀和:走过车厢时累加,未到车厢的上下车直接改状态,总复杂度 O(n+k)。 | 普及- | 2026-10-06 00:42 | |||
1537 | 动态区间相交计数化归为两个端点前缀计数:答案 = 左端点 ≤ r 的段数 − 右端点 < l 的段数,两棵树状数组在线维护,O(m log n)。 | 普及- | 2026-10-06 00:42 | |||
1542 | 两个单调队列分别维护窗口最值候选:队尾淘汰被新元素支配的下标、队首弹出过期下标,每个元素进出各一次,O(n) 求出全部滑动窗口的最大值与最小值。 | 普及 | 2026-10-06 00:41 | |||
1523 | 把“每条 a 到 b 的路径都经过 v”转成删除判据:删掉 v 后 a 到不了 b 即为必经点,逐点做一次 DFS 连通性判定,取编号最小者。 | 普及- | 2026-10-06 00:37 | |||
1530 | 并查集维护无向图连通块,统计每个含边连通块中奇度顶点的数量,计算最少一笔画覆盖数。 | 普及 | 2026-10-06 00:36 | |||
1536 | 利用输入按 y 增序给出的特性将二维偏序降维,使用树状数组维护横坐标前缀和统计星星等级 | 普及 | 2026-10-06 00:35 | |||
1535 | 单点加与区间求和交替:树状数组按 lowbit 把前缀和拆成 O(log n) 段,修改沿链更新、查询两次前缀和相减,O(n + m log n)。 | 普及- | 2026-10-06 00:35 | |||
1487 | 将卫星设备等价于免费边连接连通块,利用 Kruskal 最小生成树消去最大边权求瓶颈距离 | 普及 | 2026-10-06 00:31 | |||
1507 | 把小路拆成双向正权边、虫洞取负权,把“回到过去”化为负环判定:超级源点做 n 轮松弛,第 n 轮仍能松弛即输出 YES。 | 普及- | 2026-10-06 00:27 | |||
1474 | 将数字串按字典序排序后只需检查相邻两串是否为前缀关系,即可判定集合是否可立即解码。 | 入门 | 2026-10-06 00:24 | |||
1488 | 引入超级源点,把「建电站费用」和「拉电网费用」统一成边权,在 n+1 个点的完全图上求最小生成树即得最小总花费。 | 普及- | 2026-10-06 00:23 | |||
1471 | 排序后只需检查相邻两串:字典序下前缀对必紧贴,一趟 sort 加相邻前缀判定即可。 | 普及- | 2026-10-06 00:19 | |||
1465 | 用 KMP 匹配模式串,每次匹配成功立即计数并清零匹配指针,保证子串互不重叠。 | 普及- | 2026-10-06 00:19 | |||
1466 | 用 KMP 失败函数求最长 border,最小正周期 p = n - pi[n-1];p 整除 n 时答案为 n/p,否则为 1。 | 普及 | 2026-10-06 00:18 | |||
1464 | 哈希表记录雪花形状最近出现位置,双指针滑动窗口 O(n) 求最长无重复连续子序列 | 普及 | 2026-10-06 00:18 | |||
1456 | 用 unordered_set 维护图书集合,add 插入,find 查询。 | 入门 | 2026-10-06 00:13 | |||
1455 | KMP 单趟扫描统计模式串在文本中(可重叠)出现的次数:fail 数组预处理 + 主串扫一遍,均摊 O(|s1|+|s2|)。 | 普及- | 2026-10-06 00:13 | |||
1459 | 通过奇偶性判断与前缀字符串哈希 O(1) 拼接比较,枚举删除位置求出唯一的原字符串 | 普及 | 2026-10-06 00:12 | |||
1451 | 把 4×4 棋盘编码成 16 位掩码,相邻异色交换即两位同时翻转,在有限状态上跑 BFS 求最少步数。 | 普及 | 2026-10-05 23:56 | |||
1450 | 将棋盘格子建为无权图,利用 BFS 逐层扩展求骑士从起点到终点的最少移动步数。 | 入门 | 2026-10-05 23:56 | |||
1454 | 8 邻接等权连通块洪泛,每块只记录外部邻居有无更矮/更高者:无更高即山峰,无更矮即山谷,O(n²)。 | 普及 | 2026-10-05 23:55 | |||
1453 | 将 4x4 网格的 01 状态压缩为 16 位整数,BFS 搜索最少交换步数。 | 普及 | 2026-10-05 23:55 | |||
1440 | 整数划分计数 DP:设 f[i][j] 为 i 拆成 j 个不减正整数之和的方案数,按末份是否为 1 转移,O(nk) 递推。 | 入门 | 2026-10-05 23:48 | |||
1449 | 状态只有 8! 个,把每个排列看作节点、A/B/C 三种操作看作边,从基本状态 12345678 BFS,邻居按 A→B→C 顺序扩展且只在首达时记前驱,回溯即得字典序最小的最短操作序列。 | 普及- | 2026-10-05 23:47 | |||
1445 | 将矩形贴合拓扑依赖抽象为位掩码先决条件,使用状态压缩记忆化搜索结合同色贪心涂满求最少拿起刷子次数。 | 普及 | 2026-10-05 23:47 | |||
1438 | 根据相似三角形建立人位置到影子长度的分段单峰函数,利用三分查找求最大影子长度。 | 普及 | 2026-10-05 23:47 | |||
1431 | 枚举最远走到哪个湖定下路程,剩余 5 分钟段用小根堆反复取当前产量最高的湖,O(n·12H·log n) 求最大收获。 | 普及- | 2026-10-05 23:45 | |||
1429 | 按右端点排序后贪心选取互不重合的线段,O(n log n) 求解区间调度。 | 普及- | 2026-10-05 23:32 | |||
1433 | 把「最大的最小间距」转成单调可行性判定,用 O(N) 贪心判定给定间距能否放下 C 头牛,再在答案值域上二分。 | - | 普及- | 2026-10-05 23:30 | ||
1428 | 按原序列顺序贪心累加,当前段和超过上限时另起一段,单次线性扫描求得最少分段数。 | 入门 | 2026-10-05 23:30 | |||
1427 | 贪心加堆:每次合并最小的两个数得 max,取负后每次合并最大的两个数得 min,两遍小根堆后作差,O(N log N)。 | 普及- | 2026-10-05 23:26 | |||
1424 | 圆覆盖转中心线有效区间后,按左端点排序并反复选左端不超过当前覆盖点、右端最远的区间贪心覆盖。 | 普及- | 2026-10-05 23:23 | |||
1423 | 按区间右端点升序排序,区间缺树时贪心靠右侧放置以最大化后续重叠复用。 | 普及 | 2026-10-05 23:22 | |||
1426 | 反悔贪心:按期限排序逐个安排,堆里存已安排游戏的扣款数,放不下就弹出扣款最小的(记为超期),未被安排的扣款总和最小即最优。 | 普及- | 2026-10-05 23:22 | |||
1411 | 埃氏筛一次性建出整个值域的素数表,区间内每个数 O(1) 查自身与反序数的素性,逗号拼接输出,无解输出 No。 | 入门 | 2026-10-05 23:15 | |||
1412 | 通过二进制位统计枚举 1~1000 内数字并分类为 A 类数与 B 类数。 | 入门 | 2026-10-05 23:15 | |||
1422 | 按活动结束时间升序排序后贪心选取互不冲突的区间,求最大兼容活动数。 | 入门 | 2026-10-05 23:14 | |||
1413 | 从小到大枚举进制 B(2~40),检查三个数的每一位数字是否合法并用 Horner 展开求值,第一个满足 p×q=r 的 B 即答案。 | 入门 | 2026-10-05 23:14 |