Live2D Demo
摘要: CSAcademy 是一个比较小众的罗马尼亚OJ,UI好看功能多样,但是需要fq才能注册。访问是不用fq的 CSA的题目是有英文官方题解的,很不错 常用工具:画图 找不同 题目链接 前段时间刚做过类似的分层dp题,这次又忘了,深刻反思.jpg 题目要求构造一棵n个叶子的二叉树,发现一定存在一个最优解 阅读全文
posted @ 2022-11-08 21:52 LegendStane 阅读(195) 评论(0) 推荐(0)
摘要: 先明确$a_i$是一个怪物的血量,$b_i$是攻击的代价。发现如果我们想攻击一个怪物,不如找出一个极大的包含它的区间,满足这个区间内所有怪物的攻击代价都不大于它本身的代价,因为多攻击一点肯定是好的,反正不多花钱。这启发我们把所有的怪物依照$b_i$的值建一棵笛卡尔树,其中$b_i$最大的怪物为根。容 阅读全文
posted @ 2022-11-04 15:59 LegendStane 阅读(91) 评论(0) 推荐(0)
摘要: 题目链接 不错的点分树题。我之前只听说过有点分树这个东西,没做过几个题。 先考虑图是一棵树的情况怎么做。我们对这棵树建立点分树。**所谓点分树,就是先对树进行重心分治(点分治),然后把相邻两层的重心连边形成一棵新的树。**容易发现新的树的高度是$O(logn)$的。看一开始重心分治的过程,在重心分治 阅读全文
posted @ 2022-11-03 21:40 LegendStane 阅读(233) 评论(0) 推荐(1)
摘要: 求点赞 T1. 假期计划 (holiday) 这个题作为t1可一点都不简单啊。 先用bfs $O(nm)$求出任意两点之间的最短路,这样就可以判断哪些点对可以排在一起。注意到第1、4个景点是对称的,第2、3个景点是对称的。我们对于每个景点求出当它作为第2个景点时,第1个景点的可能集合,令第i个点的这 阅读全文
posted @ 2022-11-02 11:53 LegendStane 阅读(2085) 评论(0) 推荐(1)
摘要: 长链剖分也是一种树上的链剖分的方法。与重链剖分不同,长链剖分对于树上的每个点,取子树深度最大的儿子,向它连重边,其他的儿子向它连轻边。容易发现一个点所在的重链的长度至少为它子树的深度。 利用这个性质可以$O(nlogn)$预处理,$O(1)$求树上任意节点的k级祖先。比如当前要询问点x的k级祖先(k 阅读全文
posted @ 2022-10-27 17:51 LegendStane 阅读(409) 评论(0) 推荐(1)
摘要: Div1A / 2C. Make Nonzero Sum 令最后每个$a_i$的系数为$c_i$($c_i=1/-1$),发现只要满足$c_1=1$(下标从1开始),且c中没有两个-1相连,就一定能找出一种划分方式。那我们先令所有$c_i$都为1,再进一步把一些1改成-1。如果全是1时序列的和sum 阅读全文
posted @ 2022-10-24 11:30 LegendStane 阅读(445) 评论(1) 推荐(2)
摘要: 最近一个月我的vscode突然开始发癫,正常情况下,在编辑器中输入一段字符应该会弹出自动补全的框框(使用C/C++): 但是不知道从何时起,我的vscode弹出的框里会出现只有C++关键字的情况。每几秒钟发生一次,严重破坏使用体验。 据说是插件冲突的问题,卸载了绝大多数插件,无效。 VS Code整 阅读全文
posted @ 2022-10-18 11:54 LegendStane 阅读(2250) 评论(0) 推荐(0)
摘要: 点我看题 昨天刚打的ARC,题目质量还是不错的。 A - Equal Hamming Distances 对于一个位置i,如果$S_i=T_i$,那么不管$U$的这个位置填什么,对到$S$和$T$的海明距离增量都是相同的,所以这种位置一定填$0$更好;否则,这个位置填$0$或$1$分别可以给到$S$ 阅读全文
posted @ 2022-10-17 15:50 LegendStane 阅读(325) 评论(0) 推荐(2)
摘要: 点我看题 求点赞 A. Maxmina 首先序列全0的情况肯定是NO。否则,如果$k\ge 3$,则在序列中随便找一个1,把他左边和右边分别用第一种操作不断缩,直到序列长度为k为止,最后用一次2操作变成一个1;如果$k=2$,直接不断用2操作把序列缩成一个元素即可。所以最后的结论就是只要序列中有1就 阅读全文
posted @ 2022-10-16 14:16 LegendStane 阅读(344) 评论(1) 推荐(3)
摘要: 点我看题 求点赞/kel/kk A - Continuous 1 对于每一个长度为k的区间,它合法当且仅当输入序列中所有出现的1都在这个区间内,所有出现的0都在这个区间外。用前缀和判断一下即可。注意题目要求的是合法区间只有一个,而不是存在就行。 时间复杂度$O(n)$。 点击查看代码 #includ 阅读全文
posted @ 2022-10-11 11:55 LegendStane 阅读(198) 评论(0) 推荐(0)
摘要: 求点赞 点我看题 A. Ela Sorting Books 从前往后一位一位确定答案。用一个数组记录当前每个字母库存的数量,要确定答案的某一位时,枚举前$min(\frac nk,26)$个字母,找到第一个库存为0的字母,则当前这位的答案就是这个字母。然后把字典序在这个字母之前的字母库存都-1就行。 阅读全文
posted @ 2022-10-08 12:55 LegendStane 阅读(554) 评论(0) 推荐(2)
摘要: 很久没rated打过cf的比赛了,这次打得还行,至少进前100了 求点赞 点我看题 A. Glory Addicts 把类型0的数放进数组a里,类型1的数放进数组b里。如果$|a|=|b|$,你可以把所有数里最小的放在第一个,其他的交错排列,这样除了最小的其他都能取到2的系数。这个需要特判。否则假设 阅读全文
posted @ 2022-10-01 12:41 LegendStane 阅读(1206) 评论(1) 推荐(4)
摘要: 点我看题 G - Sequence in mod P 稍微观察一下就会发现,进行x次操作后的结果是$A^xS+(1+\cdots +A^{x-1})B$。如果没有右边那一坨关于B的东西,那我们要求的就是满足$A^x \equiv \frac GS$的最小的x(离散对数)。有一个叫BSGS的东西是专门 阅读全文
posted @ 2022-09-25 21:25 LegendStane 阅读(178) 评论(0) 推荐(0)
摘要: 几年前整理的东西,要不就发到网上吧 不过现在这些东西里面也有很多考得比以前少了 卡特兰数 $f(i)=\sum_\limits{i=0}^{n-1}{f(i)f(n-i-1)}$ 其中$f(0)=1$ $f(n)=$一个凸$n$边形用不相交的对角线划分成三角形的方法种数。 证明:对于一条边,在另外的 阅读全文
posted @ 2022-09-17 09:28 LegendStane 阅读(155) 评论(0) 推荐(0)
摘要: 点我看题 题目质量一言难尽(至少对我来说 所以我不写D的题解了 A - mod M 发现如果把M选成2,就可以把答案压到至多2。所以答案只能是1或2,只要判断答案能不能是1即可。如果答案是1,那么M必须是所有任意两个数的差的GCD的因子,只要检查这个GCD是否是1即可。实现的话之间取所有相邻两个数的 阅读全文
posted @ 2022-09-14 21:55 LegendStane 阅读(341) 评论(0) 推荐(1)