摘要:
"洛谷题目链接" "bzoj题目链接" 题目大意 :给定$n$组$C_i, P_i, L_i$,求最小的$M$使得对于任意的$i,j (1 \leq i, j \leq n)$ $$C_i + P_i \times x \equiv C_j + P_j \times x \pmod M$$ 不成立 阅读全文
摘要:
"题目链接" 题解 题意 : 有一些格子,每个格子有一定分数。 给你四种卡片,每次可以使用卡片来前进1或2或3或4个格子并拾取格子上的分数 每张卡片有 数量限制 。求最大分数。 分析 设$dp[i]$为第前$i$个格子所能得到的最大分数 显然有一个简单的转移方程 $dp[i] = \max(dp[i 阅读全文
摘要:
"题目链接" 题解 题目大意 : 一个序列,支持区间开方与求和操作。 算法 :线段树实现 开方修改 与区间求和 分析 : 显然,这道题的求和操作可以用线段树来维护 但是如何来实现区间开方呢 大家有没有这样的经历:玩计算器的时候, 把一个数疯狂的按开方,最后总会变成 $1$,之后在怎样开方也是 $1$ 阅读全文
摘要:
"题目链接" 题解 算法 : 一个经典的 并查集 但是需要用一点 贪心 的思想 做法 : 先将给的冲突们按 冲突值从大到小进行排序 ~~(这很显然)~~ 然后一个一个的遍历它们 如果发现其中的一个 冲突里的两个人在同一个集合里,直接输出当时的冲突值 否则,第一个人不妨设其为$x$,用一个$op[x] 阅读全文
摘要:
"洛谷题链" "bzoj题链" PS: $t_i$ : 在什么时候建筑 $i$ 自爆 $a_i$ : 修复 $i$ 所花时间 题解 算法:贪心+堆维护 贪心策略: 直接按 $t$ 贪心?显然不行。 那我们考虑先按 $t$ 贪心,中途再更改。 按 $t$ 从小到大排序之后,开始轮流遍历每个建筑。 如果 阅读全文
摘要:
"题目链接" 题解 家和公司在同侧 简单,直接预处理掉 若 $k=1$ 取所有的居民的$\frac{家坐标+公司坐标}{2}$的所有坐标的正中间建一座桥,使所有居民到的距离最小。 实现方法:线段树(用来求中位数) 期望得分:$14 + 8 = 22$(如果按子问题给分) 若 $k=2$ 取每个线段的 阅读全文
摘要:
"题目链接" 题解 题意 给你一个无向图,求两个点之间的一条路径,使路径上的最小值最大 算法 :Kruskal最大生成树+倍增lca 分析 首先容易知道,答案一定在该图的 最大生成树 上 之后问题便转换成了树上点$u$到$v$的简单路径42中最小的边权 经典的树上倍增 用fa[i][j]来表示从第$ 阅读全文
摘要:
"题目链接" 题解 题意 一棵树上有$m$条路径,可以将其中一条边的权值改为0,问最长的路径最短是多少 分析 最短的路径最长自然想到二分最长路径,设其为$dis$ 关键在于如何check check的关键又是将哪条边改为0 贪心,如果所有超过$dis$的路径能在一条边上重合,则将那条边改为0,之后再 阅读全文