在这样一场毒瘤的省选中 这道题目无疑是命题人无私的馈赠 大量精心构造的部分分,涵盖了题目中所有涉及的算法 你可以利用这道题目,对你是否能够进入省队进行初步检查 经典的模型.较低的难度和不大的代码量,能帮助你把分数收入囊中 出题人相信,这个美妙的题目,可以给拼搏于省队的逐梦之路上的你,提供一个有力的援助. By 2019十二省联考命题人 Emmm,显然不是说给我听的. 你看,两紫一黑 Day –? Loli在黑板上设置了倒计时:[距一轮____天].然而这个倒计时甚至总是忘了更新.今天(4月10日…
题目链接: [十二省联考2019]字符串问题 首先考虑最暴力的做法就是对于每个$B$串存一下它是哪些$A$串的前缀,然后按每组支配关系连边,做一遍拓扑序DP即可. 但即使忽略判断前缀的时间,光是连边的时间就会爆炸,显然不能暴力连边. 对于前缀不好解决,可以将字符串翻转然后变成判断是否是后缀. 可以发现对于后缀自动机的$parent$树,每个节点是子树内所有节点的后缀. 那么我们可以利用$parent$树来优化建图过程,将树上每个点向子节点连边. 对于每个$A$串和$B$串在后缀自动机上匹配出对应…
题目链接: [十二省联考2019]异或粽子 求前$k$大异或区间,可以发现$k$比较小,我们考虑找出每个区间. 为了快速得到一个区间的异或和,将原序列做前缀异或和. 对于每个点作为右端点时,我们维护出与他异或起来最大的左端点并将这组信息用结构体存起来插入堆中. 那么最大值就是堆顶那组(假设右端点为$r$),但考虑到次大值可能出自同一个右端点,所以在弹出堆顶后还需要将以$r$为右端点的次大值插入堆中. 那么如何求出以$r$为右端点的最大值和次大值? 我们对序列每个数为一个版本建可持久化$trie$…
[BZOJ5495][十二省联考2019]异或粽子(主席树,贪心) 题面 BZOJ 洛谷 题解 这不是送分题吗... 转异或前缀和,构建可持久化\(Trie\). 然后拿一个堆维护每次的最大值,每次如果取了一个数,就把它再在\(Trie\)树上查一次新建一个元素丢回堆里就行了. #include<iostream> #include<cstdio> #include<queue> using namespace std; #define ll long long #de…
[BZOJ5496][十二省联考2019]字符串问题(后缀树) 题面 BZOJ 洛谷 题解 首先显然可以把具有支配关系的串从\(A\)到\(B\)连一条有向边,如果\(B_i\)是\(A_j\)的前缀,就从\(B\)连一条边到\(A\).这样子问题就转化成了要求解这个二分图的最长路经,有环答案就是\(-1\). 然后显然就是要找个什么东西出来优化连边是吧... 现在唯一要处理的东西就是要找到个啥玩意,来优化这个满足前缀条件的连边. 假装我们有一个所有后缀都被插进去的\(Trie\)树,那么对于每…
[BZOJ5498][十二省联考2019]皮配(动态规划) 题面 BZOJ 洛谷 题解 先考虑暴力\(dp\),设\(f[i][j][k]\)表示前\(i\)所学校,有\(j\)人在某个阵营,有\(k\)人在某个派系的方案数. 发现如果\(k=0\),那么可以先决策每个城市选择哪一个阵营,再对于每个学校选择哪一个派系.显然两者之间不冲突,分开\(dp\)再乘起来就行了. 加入限制,每个限制的形式即在某个城市选定了某个阵营之后,这个学校只有一种选择. 先把没有限制的部分处理完,首先这些学校单独拎出…
题目地址:P5290 [十二省联考2019]春节十二响 骗分方法 如果你实在一点思路也没有,暴力都不会打,那么请考虑一下骗分. 方法一 输出所有 \(M\) 的和. 期望得分:0分. 实际还有5分 方法二 注意到有 \(15\) 分为一条链,分两种情况考虑: 1号点有一个儿子--详见方法一. 1号点有两个儿子--把对这两个儿子下的两条链弄成两个堆,每次取出两个堆的堆顶,取 \(max\) 加入答案,当一个堆取尽后,把另一个堆里的所有元素加入答案,最后加入 \(M_1\) . 期望得分:15分.…
[十二省联考2019]异或粽子 01trie 链接 luogu 思路 首先求前k大的(xo[i]^xo[j])(i<j). 考场上只想到01trie,不怎么会写可持久,就写了n个01trie,和直接sort一样.. 咳咳,官方题解是. 一个堆维护i为终点,可以取得位置为\([L,R]\)的最大值为val. 每次选最大的,然后将这个点分裂成两个: i为终点,可以取得位置为\([L,x-1]\)的最大值为\(val_1\). i为终点,可以取得位置为\([x+1,R]\)的最大值为\(val_2\)…
「ZJOI2019」&「十二省联考 2019」题解索引 「ZJOI2019」 「ZJOI2019」线段树 「ZJOI2019」Minimax 搜索 「十二省联考 2019」 「十二省联考 2019」异或粽子 「十二省联考 2019」字符串问题 「十二省联考 2019」春节十二响…
P5290 [十二省联考2019]春节十二响 从特殊到一般 我们先看链的情况. 我们把点$1$左右的两条子链分别扔入堆里 每次取出两个堆的最大值,把答案累加上更大的那个(另一堆为空则直接加上去). 那么......如果$1$连着多条链咋办? 我们又发现,你可以每次把每2条链所对的堆两两合并,并不影响答案. 那么......如果$1$连着多棵树咋办? 其实是链是树已经没多大区别了,因为它们之间互不影响. 于是做法就出来了 dfs把子树合并,一层层合并上去就好辣 注意为了保证复杂度$O(nlog^2…