洛谷P1217题解 这道题没什么思维难度,建议降红,本题目可以拆分成两个步骤。 判断质数。 判断回文数。 判断质数的代码很简单,从 $2$ 枚举到 $\sqrt x$,判断每一个 $i$ 是否能被 $x$ 整除,如可以返回一,否则返回零,可以得到如下代码。 1234567bool isprime(int x){ if(x < 2) return 0; for(int i = 2;i 2025-08-21 题解 #USACO
洛谷P12972题解 题目链接:https://www.luogu.com.cn/problem/P12972。 如果这道题你去看简易题面,你成功的被套进去了。 我们化简精力计算公式,可以得到: $$(k \operatorname{and} a_j)+(k \operatorname{xor} a_j)−k=a_j$$ 因此,每轮的总精力消耗为该轮中所有饮料重量的按位或。 为了最小化总和,应让每轮的按位或 2025-08-21 题解 #贪心 #位运算
洛谷P8687题解 本题考虑使用状压 DP。 设糖果口味总数为 $m$,使用二进制数 $s \in {0, 1}^m$ 表示口味集合,其中第 $k$ 位为 $1$ 当且仅当该集合包含第 $k$ 种口味。 定义状态 $f(s)$ 为覆盖口味集合 $s$ 所需的最小糖果包数。初始条件为: $f(\emptyset) = 0$(空集不需要任何糖果包) $f(s) = +\infty$(对于所有非空集 2025-08-21 题解 #蓝桥杯 #DP
洛谷P13013题解 分析这道题目要求我们计算在给定两种优秀券的数量限制下,最多可以兑换多少份奖品。兑换规则有两种方式: 使用 $a$ 张课堂券和 $b$ 张作业券。 使用 $b$ 张课堂券和 $a$ 张作业券。 首先我们确保 $a \le b$,处理会更加方便,也就是说当 $a > b$ 时需要交换 $a$ 和 $b$。 当 $a = b$ 时,兑换方式只有一种,直接取两种券数量的较小值除以 2025-08-21 题解 #GESP #二分
洛谷P5741题解 分析题目大意:给定 $N$ 名学生的姓名和三门科目成绩,找出所有 “旗鼓相当的对手”,即两学生每科分数差不超过 $5$ 且总分差不超过 $10$。输出需按字典序排列所有符合条件的学生对。 这道题我们可以使用结构体存储学生信息(姓名、各科成绩、总分)。 然后遍历所有可能的学生对,检查每科分差和总分差是否符合要求,这里可以使用绝对值函数来取差。 最后将符合条件的学生对按字典序排序后输出。 代码1234 2025-08-21 题解
洛谷P13190题解 题目链接:https://www.luogu.com.cn/problem/P13190。 分析题意:给定一个 $N \times N$ 的网格,每行和每列的士兵身高严格递增。现在丢失了一行或一列,剩下 $2 \times N-1$ 个列表。要求找出缺失的那一行或列。 首先我们可以统计所有数字的出现次数(每个数字在行列中出现的总次数应该是偶数,除非它属于缺失的那一行或一列)。 然后筛选奇数次出现的 2025-08-21 题解 #数学 #Google Code Jam
洛谷P2415题解 分析题意:给定一个包含不超过 $30$ 个元素的集合,求所有子集的元素之和。例如,集合 ${2,3}$ 的所有子集为 $\varnothing, { 2 }, { 3 }, { 2, 3 }$,其元素和为 $2+3+2+3=10$。 通过观察可以发现,每个元素在所有子集中出现的次数是相同的。 对于一个大小为 $n$ 的集合,每个元素出现的次数为 $2^{n-1}$。例如,集合 ${2,3 2025-08-21 题解 #数学
洛谷P13491题解 分析题意:要求判断能否将字符串 $S$ 分割成若干连续子串,然后通过重新排列这些子串的顺序,使其与字符串 $T$ 完全相同。两个字符串长度均为 $n$,且只包含小写英文字母。 这道题的关键在于:如果 $S$ 能通过分割重组得到 $T$,那么 $S$ 和 $T$ 必须包含完全相同的字符(包括每个字符的数量)。 因为,如果两个字符串包含的字符种类或数量不同,无论如何分割重组都不可能让它们相等,并且,如 2025-08-21 题解 #梦熊比赛
洛谷P8591题解 题目链接:https://www.luogu.com.cn/problem/P8591。 分析题意:给定 $n$ 条线段,需将每条线段染成红色或黑色。要求红色线段互不相交,且每条黑色线段至少与一条红色线段相交。目标是最小化红色线段的总长度和。 这道题的核心是选择合适的红色线段,既要保证它们互不相交,又要能 “覆盖” 所有黑色线段。也就是,所有未被选作红色的线段必须与至少一条红色线段相交,而红色线段 2025-08-21 题解 #DP
洛谷P13554题解 分析题意:小 C 要给小 G 买至少 $a$ 个奶龙玩偶,玩偶原价是每个 $x$ 元。不过有个促销活动:如果单次买满 $y$ 个,每个的单价就降到 $z$ 元,其中 $z \le x$。我们需要算出小 C 最少要花多少钱。 要找到最少花费,得考虑两种可能的购买方案,然后选便宜的那个: 不凑促销:直接买刚好 $a$ 个,按原价 $x$ 算,花费是 $a \times x$。 凑促销:如果买的数量 2025-08-21 题解 #梦熊比赛