Solution Set -「LOCAL」冲刺省选 Round XXIV
\(\mathscr{Summary}\)
名副其实的 trash round,希望以后没有了。
A 题算好,确实一个比较关键的简化状态的点没想到,所以只拿了暴力(不考虑 \(\mathcal O(n^4)\) 能操过更多分的情况,明明 \(\mathcal O(n^4)\) 和 \(\mathcal O(2^n)\) 是一档的。)
B 题签到,C 题倍增 + 分治 NTT 你开 \(10^6\) 我确实 ,要不是 \(10^5\) 分多我甚至懒得写。
\(\mathscr{Solution}\)
\(\mathscr{A}-\) Good
给定 \(\{a_n\},\{w_n\}\),每次可以在 \(\{a_n\}\) 中删去一个先升再降相邻差 \(1\) 的子串,删去长度为 \(l\) 的子串的收益为 \(w_l\)。求经过任意次操作获得的最大收益。
\(n\le400\)。
联系 \(n\) 的范围猜测是区间 DP,所以先莽一个 \(f(l,r)\):把 \(a_{l..r}\) 删干净的最大收益(求出 \(f\) 之后可以再 DP 一下求答案)。注意“子串”成为“子序列”,能够划分子问题,所以自然想到转移时去讨论 \(a_l\) 被怎样的操作删除。
这一点比较巧妙,也算是一个“删子串”转移的 trick:如果删除 \(a_l\) 时没有一起删除 \(a_r\),那么 \(a_{l..r}\) 本身就能分成两段独立转移,所以我们只需要考虑 \(a_l\) 和 \(a_r\) 一起被删掉的操作。
接下来就简单了。定义 \(g(l,r)\) 表示从 \(a_l\) 出发升序删子序列删到 \(a_r\) 所划分出的子问题 \(f\) 的最大和;\(h(l,r)\) 则为降序删子序列。那么
g(l,r)=\max_{i\in[l,r),a_i+1=a_r}\{g(l,i)+f(i+1,r-1)\},\\
h(l,r)=\max_{i\in(l,r],a_i+1=a_l}\{f(l+1,i-1)+h(i,r)\}.
\]
\(\mathcal O(n^3)\) 转移即可。
\(\mathscr{B}-\) Color
给定含有 \(n\) 个点 \(m\) 条边的连通无向图,结点 \(u\) 有颜色 \(c_u\)。每次修改一个结点的颜色,修改后求出异色结点间的最短路。
\(n\le2\times10^5\),\(m\le3\times10^5\),边权非负。
显然最短路一定是一条边;显然只有 MST 上的边有用;显然可以 \(\mathcal O(q\log n)\) 在树上做。
\(\mathscr{C}-\) Music
给定 \(\{v_n\}\),求序列 \(S=\{s_n\}\) 的个数,使得 \(1\le s_i\le v_i\),且 \(S\) 没有 border。
\(n\le10^6\),\(v_i\le v_{i+1}\)。
注意 \(v_i\le v_{i+1}\) 这个限制告诉我们,对于 \(S\) 的任意一个 \(|S|/2\) 以内的前缀,我们可以让它成为 border。所以不难设计出基于此的暴力 DP,令 \(f(i)\) 表示仅考虑 \(s_{1..i}\) 的答案,\(p_i=\prod_{j=1}^iv_j\),那么
\]
发现这是一个很像卷积的东西,但是它要求 \(p(x)\cdot q(x)\) 时,\(p\) 取出的 \(x\) 指数不小于 \(q\) 取出的 \(x\) 指数。从分治乘法的角度考虑,显然所有左端点不为 \(1\) 的区间无法内部转移,所以分治实质上是一个倍增。随便写写画画可以设计这样一个倍增方法:

我们想要求 \(f\) 的灰色部分;红线是当前的中点,橙线是右半部分的中点。黄色连线可以直接卷,蓝色连线递归处理做上文提及的特殊卷积。特殊卷积的复杂度 \(T(n)=\mathcal O(n\log n)+2T(n/2)=\mathcal O(n\log^2n)\),总复杂度 \(F(n)=T(n)+F(n/2)=\mathcal O(n\log^2n)\)。这个 \(10^6\) 带俩 \(\log\) 跑多项式?我的笔记本也是超神只用 \(0.7\text s\) 跑大样例,总之这就是正解,我也想问候出题人。
Solution Set -「LOCAL」冲刺省选 Round XXIV的更多相关文章
- Solution Set -「LOCAL」冲刺省选 Round XXV
\(\mathscr{Summary}\) 读错题了读错题了 B 题差点没做出来真的太吓人了. 逆序开题,C 题直接冲一发暴力最大权闭合子图居然过了.A 题确实一下子没想到用"可能的 ...
- Solution Set -「LOCAL」冲刺省选 Round XXIII
\(\mathscr{Summary}\) 有一说一,虽然我炸了,但这场锻炼心态的效果真的好.部分分聊胜于无,区分度一题制胜,可谓针对性强的好题. A 题,相对性签到题.这个建图确实巧妙,多见 ...
- Solution Set -「LOCAL」冲刺省选 Round XXII
\(\mathscr{Summary}\) 和出题人很有缘分但是没有珍惜.jpg A 题有一个显然的二维偏序斜率式,以及显然的 CDQ 套李超树 \(\mathcal O(n\log^2n)\ ...
- Solution Set -「LOCAL」冲刺省选 Round XXI
\(\mathscr{Summary}\) 省选几个小时啊,怎么模拟赛只打三个小时啊./kk 时间安排较为合理,没有出现严重的因思考时间过少引起的丢分. A 题比较可惜,二分 + 点分治大 ...
- Solution -「LOCAL」过河
\(\mathcal{Description}\) 一段坐标轴 \([0,L]\),从 \(0\) 出发,每次可以 \(+a\) 或 \(-b\),但不能越出 \([0,L]\).求可达的整点数. ...
- Solution -「LOCAL」画画图
\(\mathcal{Description}\) OurTeam. 给定一棵 \(n\) 个点的树形随机的带边权树,求所有含奇数条边的路径中位数之和.树形生成方式为随机取不连通两点连边直到全 ...
- Solution -「LOCAL」充电
\(\mathcal{Description}\) 给定 \(n,m,p\),求序列 \(\{a_n\}\) 的数量,满足 \((\forall i\in[1,n])(a_i\in[1,m])\l ...
- Solution -「LOCAL」二进制的世界
\(\mathcal{Description}\) OurOJ. 给定序列 \(\{a_n\}\) 和一个二元运算 \(\operatorname{op}\in\{\operatorname{ ...
- Solution -「LOCAL」大括号树
\(\mathcal{Description}\) OurTeam & OurOJ. 给定一棵 \(n\) 个顶点的树,每个顶点标有字符 ( 或 ).将从 \(u\) 到 \(v\) ...
随机推荐
- MongoDB学习 - 简单使用
1.项目引入pom依赖 <!-- mongodb --><dependency> <groupId>org.springframework.boot</gro ...
- console.log(a)和console.log(window.a)的区别?
console.log(window.l); //undefined console.log(l); //Uncaught ReferenceError: l is not defined js对于未 ...
- 2.16图论专题PB
超神建图技巧合集 CF1368G 每个骨牌变成让空位移动的至多两条有向边,证明图中无环,形成森林. 然后黑白染色,两类森林互不影响.转为每次标记 A 类一棵子树与 B 类一棵子树形成的所有点对. 再转 ...
- python中join()方法介绍
描述 Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串. 语法 join()方法语法:str.join(sequence) 参数 sequence -- 要连接的元 ...
- web刷题记录 极客大挑战2019Knife upload buy a flag
极客2019Knife webshell就是以asp.php.jsp或者cgi等网页文件形式存在的一种代码执行环境,主要用于网站管理.服务器管理.权限管理等操作.使用方法简单,只需上传一个代码文件,通 ...
- .NET SourceGenerators 根据 HTTPAPI 接口自动生成实现类
目录 摘要 元数据分析 使用 Source generators 实现 使用 Source generators 实现程序集分析 使用方法 SourceCode && Nuget pa ...
- yum源 epel源 no package available 更换国内yum源
有时候安装软件会出现 no package available 解决办法:yum install epel-release 安装完会在/etc/yum.repos.d/目录下下生成两个repo文件: ...
- Docker 与 K8S学习笔记(二十)—— 使用Downward API向容器注入Pod信息
Kubernetes在创建Pod时,会为Pod和容器设置一些额外的信息,比如Pod名称.Pod IP.Node IP.Label.Annotation.资源限制等,我们经常会在应用程序中使用到这些数据 ...
- 权限修饰符和final关键字
public 不受任何限制,可以被其他任何类访问 一个JAVA文件只能包含一个public文件 java将public类作为每个编译单元的数据接口 只能有一个接口 private 只能在自己类中访问 ...
- WebAssembly编译
环境:centos 7.9 1.准备环境 sudo yum install docker sudo systemctl start docker.service sudo docker pull tr ...