当前位置: 首页 > news >正文

NOIP2024 T3 题解

P11363

1~3 写你喜欢的暴力,期望得分12pts。

18~21 手玩一下链和菊花,结论懒得摆了,期望得分28pts。

4~6 好我们开始详细解说。
首先如果你真的想不到题解做法的话,可以写一个换根dp,过程就比较的繁琐,这里就不赘述了。
然后你发现,每个原树节点对应的所有边在新树上对应一条链,链下挂着许多棵子树。而你钦定了根关键边后,每个点的入边是确定的,唯一需要确定的是其他关键边的顺序,所以设每个点的度数为d
u

,那么答案为∏
u=1
n

(d
u

−1)!,好好理解一下,期望得分40pts,是这题的大众分,然而captainOI并没有拿到。

7~10 k=2也是比较重要的一个部分分。我们用k=1的答案乘2,减去这两条边都可行的情况。显然,我们可以画出这两条边在树上构成的链。在链上的点(不算链端点),它的入点和出点都被确定(好好想想),所以减去部分为∏
u=1
n

(d
u

−1)!×∏
u∈S

(d
u

−1)
−1
,其中S为链上点的集合,期望得分56pts。

11~12 考虑容斥,可以发现,能作为根的边在原树上一定构成一条链。所以枚举点集,找出链,像k=2一样计算答案即可,复杂度O(n2
k
),期望得分64pts。

13~15 还是容斥,设f
i

表示钦定i条关键边作为根的方案数,答案即为∑
i=1
k

(−1)
i−1
f
i

。枚举两条边l1和l2,按k=2算出的答案为ans,设l1和l2之间有v条关键边(包括l1和l2)。那么ans对f
i

的贡献即为(
i−2
v−2

)ans,复杂度O(nk
2
),期望得分76pts。

16~17 实现要精细,实现枚举l1算出所有l2,可用换根dp实现,注意去重,复杂度O(nk),期望得分84pts。

22~25 大决战,发现其实如果v≥3,那么这个ans对答案的总贡献为0。所以只需要用k=1的答案乘k,再减掉l1和l2中间没有关键边的方案数即可,可用换根dp实现,注意去重,复杂度O(n+k),期望得分100pts。
其实换种理解方式,一种链上含S条关键边的方案,会被加上S次,再被减掉S−1次,故这样的容斥是正确的。而且如果直接想到这里,就可以愉快地切掉T3,为后面的T4和前面的T1留出宝贵的时间了。

最后来一句,相信NOIP,能力到了,就一定能考出来!

http://www.sczhlp.com/news/11609/

相关文章:

  • 【高层次、国际化、连续11届EI检索】第十二届行为与社会计算国际会议(BESC 2025)
  • 基于无人系统的时空感知与智能计算
  • 解码芯安全,天翼云红盾实验室筑牢“芯”防线!
  • c#使用依赖注入
  • 磁盘挂载和Kafka概念和使用场景理解
  • MCP神器!MCP-USE 一键部署连接任何MCP服务器
  • 活动报名:出海增长,从 0 到 1,从 1 到 100、1000 一次性完整分享!丨RTE Meetup
  • 2025最新本土开发者的代码家园:Gitee 平台深度解析
  • MyEMS:用开源智能破解能源管理难题,从车间到园区的全场景实践
  • GospersHack 算法
  • 漏洞挖掘--网络攻击相关网络
  • Doris专题精讲【左扬精讲】—— 学习 Doris:从诞生到应用场景的全方位探索
  • 一个简单题的题解
  • P11989 笔记
  • Rocketmq半消息
  • 前端 html页面中各个元素介绍 head、body
  • Python生成MP3语音文件
  • MyEMS:开源驱动,重塑智能能源管理新范式
  • 软件工厂时代:知识管理系统如何重塑研发新范式?
  • H7-TOOL的250M示波器模组正式上架开卖,200K存储深度,配套的2.30版上位机这几天也将发布(2025-08-14)
  • Template System 进阶:Core / Extra 分离与“钥匙带大门”——把 React 栈的加载时间榨干
  • Playwright基础入门篇 (3) | 交互操作深度解析
  • 突围能源管理难题:MyEMS 开源方案的实战智慧
  • 定位元素辅助工具
  • 考证入口换了!以后都在这个新平台
  • Postgres 数据库(三)常见DDL命令
  • Gitee Test:解决关键领域软件测试困局,筑牢国家数字安全防线
  • 辛普森法
  • 专做人力资源管理系统(HR 系统)前 10 名的企业有哪些?
  • Linux系统新建用户命令无补全怎么处理