Solution Set - 杭电多校 2022 Day2 一句话题解
A:看了题就很容易想到虚树吧,建出虚树后考虑整体扫一遍虚树,注意到这是一棵根向树,那么统计其实十分简单,将对 \(C\) 类节点的标记下放,\(A,B\) 类节点同时上传,如果在 DFS 的过程中发现这个节点可以被 \(A,B\) 类节点同时到达,则分讨取 \(u\) 还是取 \((u,fa)\) 即可,时间复杂度瓶颈在建立虚树,可以使用一些技巧做到线性吧。
B:沙比提/oh
C:不知道正解是啥,实际上可以直接暴力然后循环展开就碾过去了。隔壁队伍 vector 纯暴力都过了/oh
D:很明显,我不会三维几何。
E:赛时咋不读题呢?傻逼题错过了。如果可以确定一个技能影响的区间,问题变为区间可重覆盖方案计数,至此问题被分为两部分:
首先先考虑如何确定区间,考虑先求单边的,比如说先求右边,考虑使用排序制造单调性,将怪物按 \(a_i-b_{i+1}\) 从大到小排序,将技能按 \(R_i\) 从大到小排序,使用并查集维护被连锁的怪物即可。
接下来考虑 DP,设 \(f_i\) 表示 \(1\sim i\) 被完全覆盖的方案数,按右端点从小到大扫描每一个覆盖区间 \([l,r]\),有 DP 转移式:\(f_r\to \sum_{i=l-1}^r f_i\),\(\forall0\le i\le l-2, f_i\to f_i\times 2\)。
使用支持区间乘,单点加的线段树维护即可,时间复杂度线性对数。
F:设 \(f_i\) 表示升级到 \(i\) 所需的期望次数,考虑一本升级书 \((a,b)\):
- 用:\(f_{i+1}\to f_i+1+(1-a)(1-b)(f_{i+1}-f_i)+(1-a)b f_{i+1}=(1-a)f_{i+1}+(a+b-ab)f_i+1\),后两项的含义是加上失败和报废的概率。
- 不用:\(f_{i+1}\to f_{i+1}+1\)。
所以说 \(f_{i+1}\to \frac1{AB}\sum_{a,b}\min\{(1-a)f_{i+1}+(a+b-ab)f_i+1,f_{i+1}+1\}\),\(\min\) 不好转移,使用一些分类讨论的操作,考察:
\]
化简后变成:
\]
这个时候我们找到了一些性质,即按 \(\frac{a+b-ab}{a}\) 排序后的二元组,一定是一段前缀使用,剩下的一定不用,枚举这段前缀的长度 \(t\),有:
\]
考察在特定 \(t\) 下的式子,记 \(x=\sum_{a,b\text{ pre }t}(1-a),y=\sum_{a,b\text{ pre }t}(a+b-ab)\),\(x\) 和 \(y\) 可以随意维护:
\]
化简一下可以得到:
\]
直接计算即可,时间复杂度为 \(O(ABK)\)。
G:有人老老实实读完了题面,我不说是谁。
H:对连续段进行哈希,为了比较方便特别处理首段和末段就行了。
I:听说很简单,不是我写的就鸽了。
J:恶臭题,注意到小 A 会走任意一棵最大生成树,根据最大生成树的形态,可以将图上的边分为三种:
- 关键边,无论如何,最大生成树上一定会包含这条边。
- 关建边,最大生成树上可能包含的边。
- 没用边,无论如何,最大生成树上一定不会有的边。
按边权排序后将相同边权的边放在一起处理,对于 Kruskal 中维护的连通块,连出相同边权的边(不连自环)后使用 Tarjan 算法求出桥边即可,因为桥边一定是关键边,自环则一定是没用边,其他被建出的边一定是关建边,如果此时 Kruskal 过程结束了,那么剩下的边就是没用边。
如果存在关键边,放一个人在关键边即可,否则的话,考虑关建边形成的子图,问题变为求删去尽可能少的边使图不连通,这是一个平面图最小割,套板即可。
K:恶臭题,维护最大,最小,次大,次小,一对,一对加最大,一对减最小,两对的答案,使用线段树维护即可。
L:大范围贪心,小范围背包即可。
Solution Set - 杭电多校 2022 Day2 一句话题解的更多相关文章
- 可持久化线段树的学习(区间第k大和查询历史版本的数据)(杭电多校赛第二场1011)
以前我们学习了线段树可以知道,线段树的每一个节点都储存的是一段区间,所以线段树可以做简单的区间查询,更改等简单的操作. 而后面再做有些题目,就可能会碰到一种回退的操作.这里的回退是指回到未做各种操作之 ...
- 2018 Multi-University Training Contest 1 杭电多校第一场
抱着可能杭电的多校1比牛客的多校1更恐怖的想法 看到三道签到题 幸福的都快哭出来了好吗 1001 Maximum Multiple(hdoj 6298) 链接:http://acm.hdu.edu. ...
- 2018 Multi-University Training Contest 9 杭电多校第九场 (有坑待补)
咕咕咕了太久 多校博客直接从第三场跳到了第九场orz 见谅见谅(会补的!) 明明最后看下来是dp场 但是硬生生被我们做成了组合数专场…… 听说jls把我们用组合数做的题都用dp来了遍 这里只放了用组 ...
- 2018 Multi-University Training Contest 2 杭电多校第二场
开始逐渐习惯被多校虐orz 菜是原罪 1004 Game (hdoj 6312) 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6312 虽然披着 ...
- 2018 杭电多校3 - M.Walking Plan
题目链接 Problem Description There are $$$n$$$ intersections in Bytetown, connected with $$$m$$$ one way ...
- 2017杭电多校第六场1011Classes
传送门 Classes Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Tota ...
- 2017杭电多校第五场Rikka with Subset
Rikka with Subset Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others ...
- 2019杭电多校&CCPC网络赛&大一总结
多校结束了, 网络赛结束了.发现自己还是太菜了,多校基本就是爆零和签到徘徊,第一次打这种高强度的比赛, 全英文,知识点又很广,充分暴露了自己菜的事实,发现数学还是很重要的.还是要多刷题,少玩游戏. 网 ...
- HDU 4941 Magical Forest(map映射+二分查找)杭电多校训练赛第七场1007
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4941 解题报告:给你一个n*m的矩阵,矩阵的一些方格中有水果,每个水果有一个能量值,现在有三种操作,第 ...
- HDU 4902 Nice boat 2014杭电多校训练赛第四场F题(线段树区间更新)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4902 解题报告:输入一个序列,然后有q次操作,操作有两种,第一种是把区间 (l,r) 变成x,第二种是 ...
随机推荐
- uniapp 开发遇到的问题
1. App平台IOS端软键盘上方横条去除方案(禁用键盘上的^) 在 pages.json 中配置 style配置 "app-plus": { "softinputNav ...
- Django 之 ModelForm
一 Django的form组件 forms组件 二 Django的model form组件 这是一个神奇的组件,通过名字我们可以看出来,这个组件的功能就是把model和form组合起来,先来一个简单的 ...
- mac 暗黑破坏神2
https://590m.com/f/28636472-500475496-61a14b (访问密码:7410) 此版本可以更改人员属性参数,过程有点复杂,如需了解,请留言+v沟通吧... 编辑 ...
- (python笔记)python使用JS定位css元素
from selenium import webdriver from selenium.webdriver.common.keys import Keys import time import da ...
- golang json 字符串 用 json.Number 解析字段
不定义结构体,用map 解析json 字符串字段 func main() { jsonString := `{"age": 20, "height": 180 ...
- 【SSO单点系列】(3):CAS4.0 之自定义返回登出页面
一.登出实现返回自定义页面 服务端修改 cas-servlet.xml <bean id="logoutAction" class="org.jasig.cas.w ...
- 查看当前linux进程所在的目录
1.通过 ps -ef | grep xxx 查看进程信息 ps -ef | grep rsi 1 2.通过 ll /proc/PID 命令查看进程所在目录位置 ls -l /proc/PID 1 L ...
- 推荐2个可用于毕设的微信小程序
智能垃圾回收小程序 下载: http://market.zhenzikj.com/detail/103.html 2. 通用答题小程序 下载http://market.zhenzikj.com/det ...
- 浅谈Atlassian产品搭建的敏捷管理体系(一)概述
准备把敏捷管理的专题在今年完成,主要谈一下Atlassian的实践,先做一下搬运工,讲去年写的两篇弄过来. Dream big, work smart, deliver fast 使用Atlassia ...
- IaaS--云上虚拟网络(何恺铎《深入浅出云计算》笔记整理)
[概念] 虚拟私有网络(Virtual Private Cloud,简称 VPC),是云计算网络端最重要的概念之一,它是指构建在云上的.相互隔离的.用户可以自主控制的私有网络环境.虚拟私有网络有时也称 ...