题目列表
可按标题、OJ、标签和启发记录快速筛选题目解析。
| 标题 | OJ | 题号 | 标签 | 难度 | 最后更新 | 原题 |
|---|---|---|---|---|---|---|
使用 Python 三参数 pow 直接计算模意义下的快速幂。 | luogu | P1226 | 普及- | 2026-07-16 18:28 | 打开 | |
按横坐标分治,并在纵坐标有序的中间条带中只检查常数个后继点。 | luogu | P1257 | 提高+/省选- | 2026-07-16 18:28 | 打开 | |
建立区间最小值 ST 表,以两个允许重叠的 2 的幂区间回答静态 RMQ。 | luogu | P1816 | 普及/提高- | 2026-07-16 18:28 | 打开 | |
离散化数值,用树状数组统计每个数左边有多少个更大的数。 | luogu | P1908 | 普及+/提高 | 2026-07-16 18:28 | 打开 | |
按高度排名建立两列位置的对应排列,再把最少相邻交换次数转成逆序对。 | luogu | P1966 | 提高+/省选- | 2026-07-16 18:28 | 打开 | |
按听力递增扫描,用两棵树状数组求当前奶牛到所有已处理坐标的距离和。 | luogu | P2345 | 提高+/省选- | 2026-07-16 18:28 | 打开 | |
双指针求每块石头的一跳终点,再对整个映射做二进制快速幂。 | luogu | P3509 | 省选/NOI- | 2026-07-16 18:28 | 打开 | |
二分最大误差,使用随机增量最小覆盖圆与最长可行前缀贪心构造连续分组。 | luogu | P3517 | 省选/NOI- | 2026-07-16 18:28 | 打开 | |
把环形区间展开复制,预处理最远可达区间并用倍增统计覆盖一圈的最少人数。 | luogu | P4155 | 省选/NOI- | 2026-07-16 18:28 | 打开 | |
用六个同尺寸正三角形覆盖更大的正三角形,并滚动维护倍增最大值。 | luogu | P6648 | 省选/NOI- | 2026-07-16 18:28 | 打开 | |
单调栈建立水流向的下一只更大圆盘,再对路径容量和做倍增。 | luogu | P7167 | 省选/NOI- | 2026-07-16 18:28 | 打开 | |
按编号做字典序贪心,以区间调度倍增作为可扩展性判定,并用 Treap 维护空闲时间段。 | luogu | P7562 | NOI/NOI+/CTSC | 2026-07-16 18:28 | 打开 | |
用并查集合并已知亲戚关系,查询两个人的代表元是否相同。 | luogu | P1551 | 入门 | 2026-07-16 18:26 | 打开 | |
筛出不小于 p 的质数,并查集合并区间内每个质数的所有倍数。 | luogu | P1621 | 普及+/提高 | 2026-07-16 18:26 | 打开 | |
用并查集维护强制朋友关系,答案是朋友关系图的连通分量个数;2N 并查集是其紧凑模板写法。 | luogu | P1892 | 普及+/提高 | 2026-07-16 18:26 | 打开 | |
用姓名字典记录直接父亲,沿父链查找最早祖先并进行路径压缩。 | luogu | P2814 | 普及- | 2026-07-16 18:26 | 打开 | |
用 Counter 统计已出现的城市前缀与州代码,流式累加反向二元组数量。 | luogu | P3405 | 普及- | 2026-07-16 18:26 | 打开 | |
离线压缩所有长度,用树状数组维护库存并按排名寻找最近的前驱和后继。 | luogu | P5250 | 普及+/提高 | 2026-07-16 18:26 | 打开 | |
用字典建立姓名到成绩的映射,直接完成增改查删和人数统计。 | luogu | P5266 | 入门 | 2026-07-16 18:26 | 打开 | |
枚举经过产奶点的左边界并收紧上下界,同时单独扫描贴场地左边界的最大空白纵缝。 | luogu | P1578 | 提高+/省选- | 2026-07-16 18:25 | 打开 | |
逐行构造空白高度,并用单调栈求所有以当前行结底的空白矩形数量。 | luogu | P1950 | 普及+/提高 | 2026-07-16 18:25 | 打开 | |
先横向、再纵向运行单调队列,在线性时间得到每个 n×n 方块的最大值和最小值。 | luogu | P2216 | 普及+/提高 | 2026-07-16 18:25 | 打开 | |
排序后用双指针求每个起点的最长合法区间,再用后缀最优组合两个不相交展示柜。 | luogu | P3143 | 普及/提高- | 2026-07-16 18:25 | 打开 | |
用递增高度栈合并可由同一张海报延续的高度层,每次出现新高度层时计数。 | luogu | P3467 | 普及/提高- | 2026-07-16 18:25 | 打开 | |
逐行把连续 F 高度压成直方图,并用单调栈求每行结尾的最大矩形面积。 | luogu | P4147 | 普及+/提高 | 2026-07-16 18:25 | 打开 | |
分别降序排列两类收益,每次给当前总收益较小的一侧加入最大剩余灯泡以平衡最坏收益。 | luogu | P4653 | 普及+/提高 | 2026-07-16 18:25 | 打开 | |
用字典记录每种雪花最近位置,在线移动左端点求最长无重复连续段。 | luogu | UVA11572 | 普及/提高- | 2026-07-16 18:25 | 打开 | |
按层数公式计算满二叉树画布坐标,递归绘制节点和斜边,并跳过被删除的整棵子树。 | luogu | P1185 | 普及+/提高 | 2026-07-16 18:17 | 打开 | |
用字典保存每个字母节点的左右孩子,递归按根、左、右拼出前序遍历。 | luogu | P1305 | 入门 | 2026-07-16 18:17 | 打开 | |
枚举医院节点并在树上 BFS 计算到各点距离,按人口加权后取总和最小值。 | luogu | P1364 | 普及/提高- | 2026-07-16 18:17 | 打开 | |
BFS 统计层深与宽度,通过父指针求 LCA,并按向上边双倍、向下边单倍计算距离。 | luogu | P3884 | 普及/提高- | 2026-07-16 18:17 | 打开 | |
分别找出对阵表左右半区冠军,决赛中能力较低的半区冠军就是亚军。 | luogu | P4715 | 入门 | 2026-07-16 18:17 | 打开 | |
用紧凑整数数组保存百万节点左右儿子,再用显式栈遍历并维护节点深度。 | luogu | P4913 | 普及- | 2026-07-16 18:17 | 打开 | |
用有序列表配合 bisect 查询排名、前驱和后继,并用 insort 插入新值。 | luogu | P5076 | 普及- | 2026-07-16 18:17 | 打开 | |
按题意用栈匹配最近未匹配左括号,记录成功位置并为其余括号补出对应一对。 | luogu | P1241 | 普及- | 2026-07-16 18:10 | 打开 | |
离线压缩营业额,用 Fenwick 树动态寻找已出现值中的前驱和后继并累加最近差。 | luogu | P2234 | 普及+/提高 | 2026-07-16 18:10 | 打开 | |
保存按入场顺序排列的学号列表,把每个一号起始询问转换成 Python 列表下标。 | luogu | P3156 | 入门 | 2026-07-16 18:10 | 打开 | |
为每个寄包柜维护一个稀疏字典,只保存实际写入过的格子编号和物品。 | luogu | P3613 | 普及- | 2026-07-16 18:10 | 打开 | |
DFS 枚举非递减加数序列,下一项从上一项开始选择,从源头去除重复拆分。 | luogu | P2404 | 普及- | 2026-07-16 18:06 | 打开 | |
把字符串作为 BFS 状态,枚举每条规则的所有出现位置,求十步内到目标串的最少变换数。 | luogu | P1032 | 普及+/提高 | 2026-07-16 18:01 | 打开 | |
枚举每个起点和八个固定方向,用 all 验证 yizhong 的七个位置并统一标记。 | luogu | P1101 | 普及- | 2026-07-16 18:01 | 打开 | |
给矩阵补一圈零并从外部 BFS,未被外部搜索到的零就是闭合圈内部。 | luogu | P1162 | 普及- | 2026-07-16 18:01 | 打开 | |
扫描网格,每遇到未访问水格就用八方向 BFS 淹掉整个连通块并把答案加一。 | luogu | P1596 | 普及- | 2026-07-16 18:01 | 打开 | |
用 DFS 枚举从起点到终点的所有简单路径,进入格子时标记、返回时撤销。 | luogu | P1605 | 普及- | 2026-07-16 18:01 | 打开 | |
预处理每个传送门端点的另一端,BFS 进入字母格时立即跳转并只增加一次移动时间。 | luogu | P1825 | 普及/提高- | 2026-07-16 18:01 | 打开 | |
用 Counter 统计每个数的出现次数,按 cnt[x]×cnt[x+C] 累加位置数对。 | luogu | P1102 | 普及- | 2026-07-16 17:50 | 打开 | |
利用根间距扫描整数端点与开单位区间,在变号区间内二分逼近三个互异实根。 | luogu | P1024 | 普及/提高- | 2026-07-16 17:49 | 打开 | |
二分月利率,逐月模拟计息与还款后的剩余本金,使最终余额逼近零。 | luogu | P1163 | 普及/提高- | 2026-07-16 17:49 | 打开 | |
对单调不减数组使用 bisect_left,验证命中后返回目标第一次出现的下标。 | luogu | P2249 | 普及- | 2026-07-16 17:49 | 打开 | |
二分最长运行时间,用各设备累计能量缺口与充电宝总供能构造单调可行性判定。 | luogu | P3743 | 普及/提高- | 2026-07-16 17:49 | 打开 | |
二分允许的最大间距,用 (gap-1)//limit 统计每段必须新增的路标数。 | luogu | P3853 | 普及/提高- | 2026-07-16 17:49 | 打开 | |
按左端点排序所有半开区间,线性合并相交区间并累加并集长度。 | luogu | P1496 | 普及- | 2026-07-16 17:48 | 打开 | |
枚举矩形上下边界并压缩列和,再用 Kadane 算法求每个行带的最大连续子段和。 | luogu | P1719 | 普及+/提高 | 2026-07-16 17:48 | 打开 | |
沿 x 轴扫描矩形左右边事件,每个竖条内合并当前活跃的 y 区间以计算覆盖面积。 | luogu | P1884 | 普及+/提高 | 2026-07-16 17:48 | 打开 | |
把建筑左右边界变成扫描事件,用最小堆维护尚未结束的最高建筑并输出高度变化点。 | luogu | P1904 | 普及+/提高 | 2026-07-16 17:48 | 打开 | |
先用字典并查集合并所有相等约束,再检查每条不等约束的两端是否落在同一集合。 | luogu | P1955 | 普及+/提高 | 2026-07-16 17:48 | 打开 | |
构造二维前缀和,O(1) 计算每个 C×C 正方形价值并按行列顺序寻找唯一最优位置。 | luogu | P2004 | 普及/提高- | 2026-07-16 17:48 | 打开 | |
枚举翻转长度 K,用异或差分在线维护当前翻转奇偶并贪心确定每个起点是否必须操作。 | luogu | P2882 | 普及/提高- | 2026-07-16 17:48 | 打开 | |
二分最小块权值,用非负矩阵上的横向与纵向贪心判定目标是否可行。 | luogu | P3017 | 提高+/省选- | 2026-07-16 17:48 | 打开 | |
按坐标排序奶牛,用 Counter 和双指针维护包含全部品种的最短坐标窗口。 | luogu | P3029 | 普及/提高- | 2026-07-16 17:48 | 打开 |