摘要:题目传送门 sol:首先我们考虑在一个长度为$n$的序列里只有一个数出现了两次其他数都只出现了一次,那么在序列中出现过的数就有$n - 1$个。而这些数的范围是$[1, m]$,从$[1, m]$里选$n - 1$个不同的数的方案数为$C_{m}^{n - 1}$。这$n - 1$个数里最大的数不能 阅读全文
posted @ 2020-03-10 12:59 Angel&Demon 阅读 (38) 评论 (0) 编辑
摘要:题目传送门 sol:假如把这题树上这个条件改成序列,那么对于操作2,求某区间$[l, r]$所有连续子序列的异或和。观察得出若$r - l + 1$是偶数,则答案是$[l, r]$区间的异或和。否则,答案是$[l, r]$区间内下标奇偶性与$l$不同的元素的异或和。那么可以用三颗线段树来分别维护奇数 阅读全文
posted @ 2020-03-05 16:04 Angel&Demon 阅读 (18) 评论 (0) 编辑
摘要:题目传送门 官方题解传送门 A .操作序列 sol:如果STL熟悉,那么就是一道模拟题。就是输入有点奇葩。但是看了官方题解中提到了平衡树。嗯,没错,map和set的底层都是平衡树。红黑树不会,平衡树觉得还是fhq-treap好敲。所以,提供一份map的解法和一份fhq-treap的解法。 map # 阅读全文
posted @ 2020-02-23 22:22 Angel&Demon 阅读 (20) 评论 (1) 编辑
摘要:题目传送门 sol:可以用线段树来维护,线段树的节点除了标配的$l$和$r$同时记录该区间$link$的个数记为$cnt$,该区间$link$点的和记为$sum$,该区间题目中所谓的能量记为$dis$。然后$cnt$和$sum$就直接两个儿子相加就好,$dis$还要另外加上$segTree[rs]. 阅读全文
posted @ 2020-02-09 20:55 Angel&Demon 阅读 (11) 评论 (0) 编辑
摘要:题目传送门 过年在家无聊补一下这周做的几道AC自动机的模板题 sol:AC自动机,还是要解决跳fail边产生的重复访问,但是这次用last边已经不行了,只能拿76分。我们把跳fail边的过程放到串扫描完之后一次性进行。 AC自动机 #include <bits/stdc++.h> using nam 阅读全文
posted @ 2020-01-25 19:48 Angel&Demon 阅读 (9) 评论 (0) 编辑
摘要:题目传送门 过年在家无聊补一下这周做的几道AC自动机的模板题 sol:AC自动机,在fail边的基础上再加一个last边,指向真正有效的节点,跳fail边改成跳last边来跳过无效点。 AC自动机 #include <bits/stdc++.h> using namespace std; typed 阅读全文
posted @ 2020-01-25 19:35 Angel&Demon 阅读 (13) 评论 (0) 编辑
摘要:题目传送门 过年在家无聊补一下这周做的几道AC自动机的模板题 sol:标准AC自动机,注意不能重复跳fail边,像"aaaaaaa...aaaaaaaa"这样的数据每跳一次fail边只往上走了一层。 AC自动机 #include <bits/stdc++.h> using namespace std 阅读全文
posted @ 2020-01-25 19:23 Angel&Demon 阅读 (19) 评论 (0) 编辑
摘要:题目传送门 sol:先通过AC自动机构建字典,用$dp[i]$表示长串前$i$位的最小代价,若有一个单词$s$是长串的前$i$项的后缀,那么可以用$dp[i - len(s)] + val(s)$转移到$dp[i]$。 AC自动机 #include <bits/stdc++.h> using nam 阅读全文
posted @ 2020-01-23 12:39 Angel&Demon 阅读 (36) 评论 (0) 编辑
摘要:题目传送门 sol:二分答案$K$,算大于$K$的乘积有多少个。关键在于怎么算这个个数,官方题解上给出的复杂度是$O(nlogn)$,那么计算个数的复杂度是$O(n)$的。感觉写着有点困难,自己写了一个复杂度是$O(nlog^{2}n)$,也够AC了。有正有负,控制边界有点难度。 二分答案 #inc 阅读全文
posted @ 2020-01-21 12:19 Angel&Demon 阅读 (68) 评论 (0) 编辑
摘要:题目传送门 sol:根据题意建立流量网络然后跑网络流,这两天刚学的网络流,练练手。 网络最大流 #include <bits/stdc++.h> using namespace std; typedef long long LL; typedef pair<int, int> PII; const 阅读全文
posted @ 2020-01-16 17:18 Angel&Demon 阅读 (13) 评论 (0) 编辑