- 博客(5)
- 收藏
- 关注
原创 洛谷 P2325 王室联邦
原题链接:https://www.luogu.com.cn/problem/P2325 树上分块思想,首先只考虑一棵以u为根节点高度为2的子树,如果说它的子结点个数大于b,那么可以将它的子节点分为若干块,每一块都等于b并且认为他们的省会为根节点。最后会有多余的一块,子结点个数小于b,此时可以将它与根节点合成一块,这一块就可以与它相邻的其他子树多余的一块合并,可画图理解。 过程使用一个栈来存结点,遍历一棵子树时,记录此时的栈大小,在将子树中的节点加入栈中,当加入的元素大于等于b就可以分成一块。(大于b的情况就
2020-11-10 16:32:11
128
原创 1066 Bash游戏
原题链接:http://www.51nod.com/Challenge/Problem.html#problemId=1066 题目大意: 有一堆石子共有N个。A B两个人轮流拿,A先拿。每次最少拿1颗,最多拿K颗,拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出N和K,问最后谁能赢得比赛。 例如N = 3,K = 2。无论A如何拿,B都可以拿到最后1颗石子。 解题思路: 博弈论基础。 分析可知最终的决胜状态是剩下k+1k + 1k+1个石子,谁在这个状态下后手谁赢。当nnn
2020-09-22 19:51:54
146
原创 AtCoder Beginner Contest 178 F - Contrast
**原题链接:**https://atcoder.jp/contests/abc178/tasks/abc178_f 题目大意: 给定序列a,ba,ba,b,两个序列都是递增的,判断改变bbb序列数字位置能否让两个序列上同一位置的数字不同。如果能输出一种可行性方案。 解题思路: 将bbb序列翻转,可以知道最多只会有一段区间的bbb序列与aaa序列上的数字相同且该区间的所有数字相同为flag。所以可以将不是这段区间的数bib_ibi且ai!=flag,bi!=flaga_i != flag,b_i != f
2020-09-14 21:09:43
293
原创 AtCoder Beginner Contest 178 E - Dist Max
原题链接:https://atcoder.jp/contests/abc178/tasks/abc178_e 题目大意: 给出nnn个点的坐标,求出其中最大的两点之间曼哈顿距离。 曼哈顿距离:∣xi−xj∣+∣yi−yj∣\left|x_{i}-x_{j}\right|+\left|y_{i}-y_{j}\right|∣xi−xj∣+∣yi−yj∣ 解题思路: 对于公式∣xi−xj∣+∣yi−yj∣\left|x_{i}-x_{j}\right|+\left|y_{i}-y_{j}\right|∣x
2020-09-14 20:29:28
220
原创 Codeforces Round #670 (Div. 2) D. Three Sequences (差分,数学)
原题链接:https://codeforces.ml/contest/1406/problem/D 题目大意: 给定一个序列aaa,需要构造两个序列bbb和ccc,要求bbb是递增序列,ccc是递减序列,在满足对于任意iii ,都有ai=bi+cia_i = b_i + c_iai=bi+ci的条件下,最小化序列c,bc,bc,b的最大值。 解题思路: 手动模拟可以得出bn=b1+sum1b_n = b_1 + sum1bn=b1+sum1,sum1sum1sum1是指所有的正差分之和,除了a1−
2020-09-13 15:46:08
172
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人