「ZJOI2019」&「十二省联考 2019」题解索引 「ZJOI2019」 「ZJOI2019」线段树 「ZJOI2019」Minimax 搜索 「十二省联考 2019」 「十二省联考 2019」异或粽子 「十二省联考 2019」字符串问题 「十二省联考 2019」春节十二响…
LOJ #3049. 「十二省联考 2019」字符串问题 https://loj.ac/problem/3049 题意:给你\(na\)个\(A\)类串,\(nb\)个\(B\)类串,\(m\)组支配关系,求一个长度很长的串\(t_1t_2...t_k\)满足 \(t_i\)为\(A\)类串,\(t_i\)能支配一个\(B\)类串,使得该\(B\)类串为\(t_{i+1}\)的前缀. 分析: 一个简单的暴力就是枚举\(A_i\)后面能接的\(A_j\)进行连边,然后拓扑序求一下最长路. 很难优化…
LOJ#3051. 「十二省联考 2019」皮配 当时我在考场上觉得这题很不可做... 当然,出了考场后再做,我还是没发现学校和城市是可以分开的,导致我还是不会 事实上,若一个城市投靠了某个阵营,学校可以任意选择派系,但是反过来看,学校选择了派系,也不影响城市投靠什么阵营,而这两者共同固定了一个学校选择的导师,所以对于k = 0的情况 我们设两个dp,\(g[i][j]\)表示考虑了前i个城市,去蓝阵营的人数为j,\(h[i][j]\)表示考虑了前i个城市,去鸭派系的人数为j,最后只需要把合法的…
题目 [题目描述] #### 题目背景一年一度的综艺节目<中国好码农>又开始了.本季度,好码农由 Yazid.Zayid.小 R.大 R 四位梦想导师坐镇,他们都将组建自己的梦想战队,并率领队员向梦想发起冲击. 四位导师的**派系**不尽相同,节目组为了营造看点,又将导师分成了不同的**阵营**,与此同时对不同阵营.不同派系都作出了战队总人数限制: - 四位导师分成两个**阵营**: - Yazid.小 R 两位导师组成**蓝阵营**,他们两位的战队人数**总和**不得超过 $C_0$. -…
题目 [题目描述] Yazid 和 Tiffany 喜欢字符串问题.在这里,我们将给你介绍一些关于字符串的基本概念. 对于一个字符串 $S$, 我们定义 $\lvert S\rvert$ 表示 $S$ 的长度. 接着,我们定义该串的子串 $S\left( {L,R}\right)$ 表示由 $S$ 中从左往右数,第 $L$ 个字符到第 $R$ 个字符依次连接形成的字符串,特别地,如果 $L < 1$ 或 $R > \lvert S\rvert$ 或 $L > R$,则 $S\left(…
题目链接 [洛谷传送门] [LOJ传送门] 题目大意 让你求区间异或和前\(k\)大的异或和的和. 正解 这道题目是Blue sky大佬教我做的(祝贺bluesky大佬进HA省A队) 我们做过某一些题目,非常的相似.[超级钢琴]还有[最小函数值]还有[最大异或和] 感觉这一些题目拼在一起就变成了这一道水题. 首先我们需要预处理出,所有区间的异或最大值. 这个东西可以用可持久化\(01trie\)实现,那么我们思考一下如何实现查询第\(k\)大的值的操作. 以下是关于01字典树中查询第k大的操作的…
题目链接 [洛谷传送门] [LOJ传送门] 题目大意 给定一棵树,每次选取树上的一个点集,要求点集中的每个点不能是另一个点的祖先,选出点集的代价为点集中权值最大点的权值,问将所有点都选一遍的最小代价为多少. (题目大意来自洛谷题解某一篇) 题解 分析一下这一道题目. 首先,因为不能存在祖先关系,那么在一条链上的所有点一定是要分开来取的. 那么很显然,根必须一个点一个集合,那么在递归子树,同样的操作,把子树独立的递归,然后合并子树内的最大值. 代码 #include <bits/stdc++.h>…
题目传送门:LOJ #3049. 题意简述: 给定一个长度为 \(n\) 的母串 \(S\). 有 \(n_a\) 个 A 类串,都是 \(S\) 的子串,以区间的形式给出. 有 \(n_b\) 个 B 类串,都是 \(S\) 的子串,以区间的形式给出. 有 \(m\) 个支配关系,形式为第 \(i\) 个 A 类串支配第 \(j\) 个 B 类串. 你需要求出最长的字符串 \(T\) 的长度,使得 \(T\) 可以被划分为若干个 A 类串的拼接,并且相邻两个 A 类串 \(t_i\) 和 \(…
题意 题目描述 小粽是一个喜欢吃粽子的好孩子.今天她在家里自己做起了粽子. 小粽面前有 $n$ 种互不相同的粽子馅儿,小粽将它们摆放为了一排,并从左至右编号为 $1$ 到 $n$.第 $i$ 种馅儿具有一个非负整数的属性值 $a_i$.每种馅儿的数量都足够多,即小粽不会因为缺少原料而做不出想要的粽子.小粽准备用这些馅儿来做出 $k$ 个粽子. 小粽的做法是:选两个整数数 $l$, $r$,满足 $1 \leqslant l \leqslant r \leqslant n$,将编号在 $[l, r…
原文链接www.cnblogs.com/zhouzhendong/p/LOJ3048.html 题解 $O(n\log^2 {a_i})$ 的做法比较简单: 1. 求出第 k 大的是什么: 二分答案,在Trie树上统计一下答案. 2. 求出前 k 大的和:已经知道了第 k 大的数值,那么,只要再在 Trie 树上走一趟就好了. 这两部分直接暴力都是 $O(n\log^2 a_i)$ 的. 那么我们来稍微优化一下: 对于 1. ,我们改成 Trie 树上二分,变成了 $O(n\log a_i)$…