题目列表
可按标题、OJ、标签和启发记录快速筛选题目解析。
| 标题 | OJ | 题号 | 标签 | 难度 | 最后更新 | 原题 |
|---|---|---|---|---|---|---|
把树上路径异或转为两个根前缀异或,再用 01-Trie 求最大异或对。 | luogu | P4551 | 普及+/提高 | 2026-07-16 19:57 | 打开 | |
把后缀异或改写为前缀异或区间查询,用可持久化 01-Trie 支持追加与最大异或。 | luogu | P4735 | 省选/NOI- | 2026-07-16 19:57 | 打开 | |
可持久化 01-Trie 求每个右端点的第 rank 大异或,用堆归并取全局前 k 大。 | luogu | P5283 | 省选/NOI- | 2026-07-16 19:57 | 打开 | |
采用贡献覆盖视角,把每个元素能接受的异或值区间在 01-Trie 上打懒标记,最后通过 DFS 下传求得最优解。 | luogu | P6824 | 普及+/提高 | 2026-07-16 19:57 | 打开 | |
每次选择非负余数并据此更新负进制商,逆序连接余数得到表示。 | luogu | P1017 | 普及/提高- | 2026-07-16 19:20 | 打开 | |
用掩码取出低 16 位并左移,同时把高 16 位右移,再按位或合并。 | luogu | P1100 | 入门 | 2026-07-16 19:20 | 打开 | |
用 int(text, base) 转成十进制整数,再反复 divmod 得到目标进制数码。 | luogu | P1143 | 入门 | 2026-07-16 19:20 | 打开 | |
先累计所有更短递增单词,再逐位用组合数统计当前字母之前的合法后缀数量。 | luogu | P1246 | 普及+/提高 | 2026-07-16 19:20 | 打开 | |
交换约数统计顺序得到 sum floor(n/d),再按相同商的连续区间整段求和。 | luogu | P1403 | 普及+/提高 | 2026-07-16 19:20 | 打开 | |
倍数枚举统计每个约数能覆盖多少能力值,再把答案从大人数向小人数传播。 | luogu | P1414 | 普及+/提高 | 2026-07-16 19:20 | 打开 | |
利用异或消去所有成对长度,并用 fread 流式读入满足千万数据和 8 MB 内存限制。 | luogu | P1469 | 普及- | 2026-07-16 19:20 | 打开 | |
先筛出不超过 sqrt(R) 的素数,再在长度不超过一百万的区间内做分段筛。 | luogu | P1835 | 普及+/提高 | 2026-07-16 19:20 | 打开 | |
按编号上限升序处理,第 i 只兔子有 Mi-i 个尚未使用的可选编号,答案为这些选择数之积。 | luogu | P1866 | 普及- | 2026-07-16 19:20 | 打开 | |
把未使用信号视为额外盒子,用隔板法分别计算 0 和 1 的分配方案再相乘。 | luogu | P2638 | 普及/提高- | 2026-07-16 19:20 | 打开 | |
把 a2 约去 a1 和后续所有数能提供的质因子,剩余分母为 1 时存在整数括号方案。 | luogu | P2651 | 普及+/提高 | 2026-07-16 19:20 | 打开 | |
欧几里得式铺最大正方形的周长和可化为 4(x+y-gcd(x,y))。 | luogu | P2660 | 普及- | 2026-07-16 19:20 | 打开 | |
把直线按平行组划分,用集合 DP 枚举新增一组平行线带来的交点数。 | luogu | P2789 | 普及/提高- | 2026-07-16 19:20 | 打开 | |
统计每个数值的出现次数,再把每个除数的频次累加到它的所有倍数。 | luogu | P2926 | 普及/提高- | 2026-07-16 19:20 | 打开 | |
把 qiandao(x) 转化为 x-phi(x),再用分段筛批量计算短区间内每个数的欧拉函数。 | luogu | P3601 | 提高+/省选- | 2026-07-16 19:20 | 打开 | |
用集合统计被占用的不同行列,再用容斥计算这些整行整列覆盖的格子数。 | luogu | P3913 | 入门 | 2026-07-16 19:20 | 打开 | |
每加入一条大小关系就重跑拓扑排序,用队列分支数判断唯一序列并用处理点数判断矛盾。 | luogu | P1347 | 普及/提高- | 2026-07-16 18:42 | 打开 | |
每趟车建立虚拟节点压缩停靠与不停靠站的大小约束,再做拓扑最长路求最少级别数。 | luogu | P1983 | 普及+/提高 | 2026-07-16 18:42 | 打开 | |
从每头牛的起点分别搜索,用计数数组统计被全部搜索到的牧场。 | luogu | P2853 | 普及- | 2026-07-16 18:42 | 打开 | |
反向建图并按编号从大到小搜索,首次访问时写入该点可达的最大编号。 | luogu | P3916 | 普及- | 2026-07-16 18:42 | 打开 | |
从所有入度为零的生产者开始拓扑 DP,把路径条数沿捕食边累加到出度为零的消费者。 | luogu | P4017 | 普及/提高- | 2026-07-16 18:42 | 打开 | |
使用 Python 三参数 pow 直接计算模意义下的快速幂。 | luogu | P1226 | 普及- | 2026-07-16 18:28 | 打开 | |
建立区间最小值 ST 表,以两个允许重叠的 2 的幂区间回答静态 RMQ。 | luogu | P1816 | 普及/提高- | 2026-07-16 18:28 | 打开 | |
把逆序对看成二维偏序,从左到右扫描并用 Fenwick 加速值域桶统计。 | luogu | P1908 | 普及 | 2026-07-16 18:28 | 打开 | |
按高度排名建立两列位置的对应排列,再把最少相邻交换次数转成逆序对。 | luogu | P1966 | 提高+/省选- | 2026-07-16 18:28 | 打开 | |
用双指针维护最近 k+1 块石头的连续窗口求单步目标,再用映射的快速幂处理 m 次跳跃。 | luogu | P3509 | 提高 | 2026-07-16 18:28 | 打开 | |
二分最大误差,使用随机增量最小覆盖圆与最长可行前缀贪心构造连续分组。 | luogu | P3517 | 省选/NOI- | 2026-07-16 18:28 | 打开 | |
把环形区间展开复制,预处理最远可达区间并用倍增统计覆盖一圈的最少人数。 | luogu | P4155 | 省选/NOI- | 2026-07-16 18:28 | 打开 | |
按 2 的幂把三角形分解成正/倒子三角形,用 3~4 个小三角形覆盖大三角形,滚动倍增求最大值。 | luogu | P6648 | 提高 | 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 | 打开 |