CSP-J 2023 题解
小苹果链接:https://www.luogu.com.cn/problem/P9748思路第一问比较简单。我们发现,每天拿走的苹果的总数除 $3$ 向上取整,换种说法:定义 $m$ 为目前的总数,那么每天取走的就是 $\lfl…
CATEGORY
小苹果链接:https://www.luogu.com.cn/problem/P9748思路第一问比较简单。我们发现,每天拿走的苹果的总数除 $3$ 向上取整,换种说法:定义 $m$ 为目前的总数,那么每天取走的就是 $\lfl…
线段树线段树,运用了分治的方法,将一个数组拆成了一堆区间。线段树和普通的树的区别在于普通的树是维护数,而线段树是维护区间。我们一般用数组表示法实现二叉树。见图:建树首先,我们从根开始递归,如果当前节点是叶子节点,那么让这个节点等…
搜索DFS这种方法可以概括为:不撞南墙不回头,回过头来继续撞。DFS,深度优先搜索,顾名思义就是每次递归到最深,然后回溯。我们一般用递归函数实现 DFS。例题:用 DFS 求最短路:#include <bits/stdc+…
小苹果链接:https://www.luogu.com.cn/problem/P9748思路第一问比较简单。我们发现,每天拿走的苹果的总数除 $3$ 向上取整,换种说法:定义 $m$ 为目前的总数,那么每天取走的就是 $\lfl…
LCA 是最近公共祖先的简称。朴素算法如果两个点的深度相同:就往上跳,直到两个节点相同。否则先让两个点的深度相同。倍增和朴素算法类似,只是把挨个往上跳变成每次跳 $2^i$。代码:#include <bits/stdc++…