题目列表
可按标题、OJ、标签和启发记录快速筛选题目解析。
| 标题 | OJ | 题号 | 标签 | 难度 | 最后更新 | 原题 |
|---|---|---|---|---|---|---|
按 or 把表达式分成 and 组,维护每组 false 位置和区间外 true 组来 O(1) 回答替换询问。 | luogu | P10274 | 普及- | 2026-07-11 12:39 | 打开 | |
按 or 把表达式分成 and 组,维护每组 false 位置和区间外 true 组来 O(1) 回答替换询问。 | usaco | 1419 | 普及- | 2026-07-11 12:39 | 打开 | |
链式舍入与直接舍入不同的数恰好落在每个位数下 [44...45, 49...9] 的区间中,逐段计数即可。 | luogu | P11449 | 普及- | 2026-07-11 12:32 | 打开 | |
找出链式舍入与直接舍入不同的数都落在每个位数的区间 (444...4,499...9] 中。 | usaco | 1443 | 普及- | 2026-07-11 12:32 | 打开 | |
先强制满足黑色像素,再检查白色冲突,并用贪心为未满足的灰色像素补星星。 | luogu | P11667 | 普及- | 2026-07-11 12:25 | 打开 | |
先强制满足黑色像素,再检查白色冲突,并用贪心为未满足的灰色像素补星星。 | usaco | 1467 | 普及- | 2026-07-11 12:25 | 打开 | |
把关于水平和竖直中线对称的四个格子分成一组,单点翻转时只更新这一组的贡献。 | luogu | P11836 | 普及- | 2026-07-11 12:15 | 打开 | |
把关于水平和竖直中线对称的四个格子分成一组,单点翻转时只更新这一组的贡献。 | usaco | 1491 | 普及- | 2026-07-11 12:15 | 打开 | |
统计能同时打败 Elsie 两个手势的单手势数量,再用补集计算合法有序对数量。 | luogu | P12022 | 普及- | 2026-07-11 12:07 | 打开 | |
统计能同时打败 Elsie 两个手势的单手势数量,再用补集计算合法有序对数量。 | usaco | 1515 | 普及- | 2026-07-11 12:07 | 打开 | |
统计每个字符串出现次数,输出最高频的字符串(字典序)。 | atcoder | abc155_c | 入门 | 2026-07-10 22:28 | 打开 | |
按城市名升序、分数降序排序后输出原始编号。 | atcoder | abc128_b | 入门 | 2026-07-10 21:42 | 打开 | |
使用 group 将连续相同字符分组,组数即为合并后剩余的史莱姆个数。 | atcoder | abc143_c | 入门 | 2026-07-10 21:22 | 打开 | |
统计不同直径的个数即最大层数。 | atcoder | abc085_b | 入门 | 2026-07-10 16:21 | 打开 | |
降序排序后,Alice 取偶数位 Bob 取奇数位,输出分差。 | atcoder | abc088_b | 入门 | 2026-07-10 16:11 | 打开 | |
| atcoder | abc042_b | - | 未知 | 2026-07-10 15:50 | 打开 | |
扫描字符串,维护当前连续 ACGT 字符的长度,遇非法字符归零,取过程中最大值。 | atcoder | abc122_b | 入门 | 2026-07-10 15:33 | 打开 | |
| atcoder | arc065_a | - | 未知 | 2026-07-10 14:41 | 打开 | |
对每组数据比较 e-c 与 r 的大小,输出 advertise / do not advertise / does not matter。 | kattis | nastyhacks | 入门 | 2026-07-10 14:27 | 打开 | |
遍历 1..N,递归拆位计算各位数字之和,筛选在 [A,B] 内的数并求和。 | atcoder | abc083_b | 入门 | 2026-07-10 11:27 | 打开 | |
枚举三种硬币分别选多少枚,用 Haskell 列表推导统计总金额等于目标值的方案数。 | atcoder | abc087_b | 入门 | 2026-07-10 10:49 | 打开 | |
计算每个数二进制末尾 0 的个数(ν₂),取最小值即为所有数能同时除以 2 的最大次数。 | atcoder | abc081_b | 入门 | 2026-07-10 09:19 | 打开 | |
根据平均数公式 S=(R1+R2)/2,代入已知的 R1 和 S 计算 R2=2S-R1。 | kattis | r2 | 入门 | 2026-07-09 21:46 | 打开 | |
直接使用 putStrLn 输出固定字符串 Hello World!。 | kattis | hello | 入门 | 2026-07-09 21:31 | 打开 | |
统计三位字符串中字符 1 的个数,作为需要放置弹珠的格子数。 | atcoder | abc081_a | 入门 | 2026-07-09 20:33 | 打开 | |
读取两个整数,判断乘积奇偶;用 Haskell 练习基础输入解析和字符串输出。 | atcoder | abc086_a | 入门 | 2026-07-09 19:36 | 打开 | |
按题意读入三个整数和一个字符串,输出整数和与字符串;重点练习 Haskell 的输入解析。 | atcoder | practice_1 | 入门 | 2026-07-09 17:55 | 打开 | |
按二进制位从高到低拆分整数,对大于 1 的指数递归生成 0,2 表示。 | luogu | P1010 | 普及- | 2026-07-07 14:55 | 打开 | |
排序后用双指针贪心,每次尝试将最便宜和最贵的纪念品配成一组。 | luogu | P1094 | 普及- | 2026-07-07 00:00 | 打开 | |
用数组模拟双向链表,O(1) 实现同学在指定位置左右插入和删除。 | luogu | P1160 | 普及- | 2026-07-07 00:00 | 打开 | |
状态压缩 DP:压缩每行国王摆放为 bitmask,逐行转移,合法状态需满足同行不相邻且上下行不冲突。 | luogu | P1896 | 普及+/提高 | 2026-07-07 00:00 | 打开 | |
把所有模式串插入 Trie 并建立 fail 指针,扫描文本串时沿 fail 链统计出现过的终止节点。 | luogu | P3808 | 普及/提高- | 2026-07-06 23:57 | 打开 | |
把普通快速幂中的乘法换成矩阵乘法,用指数二进制拆分求矩阵高次幂。 | luogu | P3390 | 普及/提高- | 2026-07-06 23:52 | 打开 | |
把数字当成字符串,按 x+y 与 y+x 的大小决定拼接顺序,排序后连接得到最大数。 | luogu | P1012 | 普及- | 2026-07-06 20:42 | 打开 | |
第一问求最长不上升子序列,第二问由 Dilworth 定理转成最长上升子序列,均可用二分维护尾值。 | luogu | P1020 | 普及/提高- | 2026-07-06 20:42 | 打开 | |
读入所有数字后调用 list.sort 原地升序排序,再按空格输出。 | luogu | P1177 | 普及- | 2026-07-06 20:42 | 打开 | |
从左到右扫描后缀表达式,数字入栈,遇到运算符就弹出两个操作数计算后再压回。 | luogu | P1449 | 普及- | 2026-07-06 20:42 | 打开 | |
按整数、小数、分数、百分数四种格式拆分字符串,分别反转数字部分并按规则去掉多余的零。 | luogu | P1553 | 普及- | 2026-07-06 20:42 | 打开 | |
扫描表达式时维护左括号数量,遇到右括号必须能匹配,结束时数量归零才合法。 | luogu | P1739 | 入门 | 2026-07-06 20:42 | 打开 | |
用单调队列维护每个前缀的最优上一段结尾,贪心取尽量靠后的可行断点。 | luogu | P5665 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
用双队列模拟强弱顺序,先处理必吃局面,再用递归反推第一次冒险吃是否成立。 | luogu | P7078 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
分别模拟国内和国际航班使用最小可用廊桥编号,再枚举两区廊桥数量分配。 | luogu | P7913 | 普及+/提高 | 2026-07-06 08:46 | 打开 | |
用区间 DP 分别统计单个外层括号块和由多个块拼接成的合法超级括号序列。 | luogu | P7914 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
固定首个取数方向后按匹配位置切成两段,用两端配对贪心构造操作串。 | luogu | P7915 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
把平面图最小割转成对偶图最短路,再对边界颜色变化点做环形区间 DP。 | luogu | P7916 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
先 BFS 求限制步数内可达,再为每个中间点保留高分候选并枚举中间两个景点。 | luogu | P8817 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
把每条可用边贡献为源点随机权值,维护全图哈希和判断是否所有点出度为 1。 | luogu | P8819 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
把路径上的点权最短路压成 k<=3 的 min-plus 矩阵,并用重链剖分维护路径转移。 | luogu | P8820 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
枚举所有五位密码,用差分模式判断它能否一次操作变成每个记录状态。 | luogu | P9752 | 普及- | 2026-07-06 08:46 | 打开 | |
把前缀消除后的栈状态建成 trie,统计相同状态对来计算可消除子串数。 | luogu | P9753 | 普及+/提高 | 2026-07-06 08:46 | 打开 | |
按对齐规则计算类型大小和成员偏移,再递归处理路径访问与地址反查。 | luogu | P9754 | 普及+/提高 | 2026-07-06 08:46 | 打开 | |
二分完成天数,把每个点转成最晚种植日,再用最早截止时间优先判断树上调度。 | luogu | P9755 | 提高+/省选- | 2026-07-06 08:46 | 打开 | |
以 1582 年换历点分段,把儒略日编号分别反推为儒略历日期或格里高利历日期。 | luogu | P7075 | 普及+/提高 | 2026-07-06 08:42 | 打开 | |
按数字从小到大贪心选择可到达的最小终点,并用并查集维护每个节点周围边的局部删除顺序约束。 | luogu | P5659 | 提高+/省选- | 2026-07-06 08:33 | 打开 | |
DFS 维护根到当前节点路径上的未匹配左括号栈,统计每个节点新增的以当前点结尾的合法括号子串数。 | luogu | P5658 | 提高+/省选- | 2026-07-06 08:28 | 打开 | |
用布尔表记录已经出现过的花色和点数组合,答案就是完整牌库中未出现的种类数。 | luogu | P11227 | 入门 | 2026-07-05 21:24 | 打开 | |
按照机器人规则模拟 k 步,用 visited 记录经过过的格子并统计不同位置数量。 | luogu | P11228 | 普及- | 2026-07-05 21:24 | 打开 | |
先用最多 7 根火柴的数字确定最短位数,再逐位选择能让剩余火柴可填满的最小数字。 | luogu | P11229 | 普及/提高- | 2026-07-05 21:24 | 打开 | |
把接龙过程建成有颜色的边,用两个接龙人压缩颜色状态,并用扫描窗口批量处理连续子序列转移。 | luogu | P11230 | 普及+/提高 | 2026-07-05 21:24 | 打开 | |
统计字符串中的所有数字并按从大到小输出,最大正整数一定使用全部数字。 | luogu | P14357 | 入门 | 2026-07-05 21:24 | 打开 |