Live2D
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 31 下一页
摘要: link Solution 虽然要AFO了,但是不妨记录一下最后的日子。/kk 首先可以看出,合法条件就是对于存在的 \(x\),那么 \(\le x\) 的数的个数恰好等于 \(x\),那么我们可以转化一下,相当于对于一个位置 \(i\) 存在 \(x\) 个,那么我们覆盖 \([i-x+1,i] 阅读全文
posted @ 2022-04-13 21:43 Dark_Romance 阅读(35) 评论(0) 推荐(0) 编辑
摘要: link Solution 不妨设 \(S\) 为总权值。 有一个结论是: 对于任意 dfs 序,对于第一个前缀和 \(\ge \lceil \frac{S}{2} \rceil\) 的点 \(x\),答案一定在 \(1\to x\) 的链上。 考虑到我们这样相当于把原树分成了两个连通块,对于 \( 阅读全文
posted @ 2022-04-12 22:58 Dark_Romance 阅读(93) 评论(0) 推荐(1) 编辑
摘要: link Solution 考虑直接值域分块,那我们可以设 \(f(u,v)\) 表示你选的 \(a_j\) 前 \(8\) 位为 \(u\),如果 \(a_u\) 后面 \(8\) 位为 \(v\) 的答案,不难看出,我们可以 \(n\sqrt V\) 直接维护。 感觉这种做法还是挺具有普遍性的。 阅读全文
posted @ 2022-04-12 20:34 Dark_Romance 阅读(53) 评论(1) 推荐(1) 编辑
摘要: link Solution 虽然要退役了,不过还是写写题解纪念一下最后的日子吧。 可以发现的是,如果我们把 \(\sum a\) 看作 \(x\),\(\sum b\) 看作 \(y\),然后一种树就是一个点 \((x,y)\),那么答案一定在凸包上,并且是一个下凸壳,具体证明可以使用反比例函数,不 阅读全文
posted @ 2022-04-12 17:25 Dark_Romance 阅读(52) 评论(1) 推荐(0) 编辑
摘要: link 因为我太逊了,所以只说一下 T1 吧。 Solution 考虑如何避免算重,你发现我们可以每次变化,如果加1,我们就必须在1的最前面加,加0就在0的最后面加,那么就是: 在最开头插入一个 1 把 0 变为 01 把 1 变为 10 在最后面插入一个 0 考虑从最终状态不停逆操作,那么我们如 阅读全文
posted @ 2022-04-08 18:58 Dark_Romance 阅读(48) 评论(0) 推荐(0) 编辑
摘要: T2 Description 小 W 的手上有一颗 \(n\) 个节点的二叉搜索树,里面有从 \(1\) 到 \(n\) 这 \(n\) 个数字。(二叉搜索树即为中序遍历恰好为 \(1\) 到 \(n\) 的二叉树) 现在你想知道这棵树的形态。但是小 W 不会直接告诉你,只允许你询问以某个点为根的子 阅读全文
posted @ 2022-04-04 15:08 Dark_Romance 阅读(68) 评论(1) 推荐(2) 编辑
摘要: link Description 一个长度为 \(n\) 的字符串,每次可以将 aa 变为 b,也可以将 bb 变为 a,问最后能变到的不同字符串个数。 \(n\le 10^5\) Solution 可以看出的是我们将 a/b 的权值设为 1/2,那么每次操作在 \(\% 3\) 意义下和并不会改变 阅读全文
posted @ 2022-03-27 11:50 Dark_Romance 阅读(34) 评论(0) 推荐(0) 编辑
摘要: link Solution 挺有意思的,我们不难想到,我们可以通过 \(a_{1,2,..,n}\) 建立起大小关系,为了方便,我们从小向大连,然后通过 topo 序来确定 \(p_{1,2,...,n}\)。连边的话显然有 \(\Theta(n^2)\) 的做法,即 \(x:1\to n\),每一 阅读全文
posted @ 2022-03-09 20:54 Dark_Romance 阅读(78) 评论(0) 推荐(0) 编辑
摘要: sequence link Solution 先考虑 \(a_{1,2,...,n}\) 存在重复的情况,那么我们可以求出它的最长不重复前缀以及最长不重复后缀,然后我们枚举它出现的位置,考虑判断合法的方案数。那么我们可以设 \(f_{i,x}\) 表示已经添加了 \(i\) 个,到当前有 \(x\) 阅读全文
posted @ 2022-03-03 21:51 Dark_Romance 阅读(58) 评论(0) 推荐(0) 编辑
摘要: link Solution 可以证明的是,答案两个端点一定在直径上面。然后我们列出式子,拆开绝对值,直接二分,用单调栈维护,确定 \(a,b\) 范围,判断是否合法。 复杂度 \(\Theta(n\log n)\)。 Code #include <bits/stdc++.h> using names 阅读全文
posted @ 2022-02-28 22:31 Dark_Romance 阅读(103) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 31 下一页