NOIP2024集训Day44-45

news/2024/10/5 21:39:34/文章来源:https://www.cnblogs.com/lovely-sheep/p/18447634

\(\textup{反色刷}\)

欧拉回路。

有解:每个点连接的黑边数为偶数

答案个数:连通块数

如果一个连通块内有两条路径,则可以在起点之间走两次,则它们一定可以合并成一条。

\(\textup{骑士游戏}\)

看起来很有让人 dp 的冲动。

假设可以用 dp。

\(f_u\) :消灭 \(u\) 的最小代价。

\[f_u = \min \{f_u, s_u + \sum f_v(u\ to\ v) \} \]

但是很容易发现这个 dp 有后效性,也不知道哪个点开始 。

那就把所有点扔进 SPFA 中跑。

\(f_u\) 的初值是 \(k_u\)

\(\textup{[GXOI/GZOI2019] 旅行者}\)

喵喵

不是,这种东西是那个天才想出来的。

二进制分组。

根据二进制下每一位的数分别将节点分成两组。

一组作为原点,一组作为终点。

可以发现两个点一定会在不同集合至少一次。

也就是说,答案的起点和终点一定会在不同集合至少一次。

取每次跑最短路的之就行了。

\(\textup{「联合省选 2020 B」丁香之路}\)

如果往 \(i\) - \(s\) 见虚边,原问题相当于找 \(s\)\(i\) 的一条欧拉回路,满足经过所有 \(m\) 条道路并且最短。

建出关键边和起点到终点的边,由于求欧拉回路,则必须满足全为偶点。

将奇点两两配对连边,由于边权是 \(|i - j|\),那么如果要连边 \((u, v)\), 则连 \((u, u + 1),(u + 1, u + 2) ... (v - 1, v)\) 一定最优,因为欧拉回路也要满足联通,这么连能够多连几个点。

还剩没联通的很多连通块,则在这些连通块中求最小生成树即可,可行边只在相邻的连通块之间,边数其实为 \(n - 1\)

对每个终点跑一边,复杂度为 \(\mathcal{O}(n ^ 2 \log n)\)

\(\textup{Nastia Plays with a Tree}\)

发现切的顺序是没有影响的,到最后都是一堆链随便连。

考虑现在要切节点 \(u\),节点 \(u\) 父亲是 \(f\),节点 \(u\)\(cnt\) 个子节点

  • \(cnt = 1\),此时什么都不用做。

  • \(cnt = 2\),发现当切掉 \((u, f)\) 后,剩下的就是一条链了。

  • \(cnt > 2\),先切 \((u, f)\),剩下再切 \(cnt - 2\) 刀。

为什么要切 \((u, f)\),发现一个节点的子节点一定越少越好,当子节点数目到一就不用切了,所以切 \((u, f)\) 减少 \(f\) 的子节点个数。

\(\textup{Logical Operations on Tree}\)

用 or 边将整棵树分成很多连通块,发现最终点权为 \(1\) 要满足这些连通块中有至少一个块的值为 \(1\)

考虑求出满足所有连通块中有至少一个块的值为 \(1\) 的方案数 ,正难则反,求所有连通块权全为 \(0\) 的方案数。

考虑 dp,设 \(f_{i, 0 / 1}\)\(i\) 子树中,\(i\) 所在的连通块当前的值为 \(0/1\) 的方案数。

\[f_{i, 0} = f_{i, 0} * f_{j, 0} + f_{i, 1} * f_{j, 0} + f_{i, 0} * f_{j, 1}, \{i\ to\ j\} \]

\[f_{i, 1} = f_{i, 1} * f_{j, 1}, \{i\ to\ j\} \]

答案为 \(2 ^ {2 * n - 1} - f_{1, 0}\)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/808728.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

监控室值班人员脱岗睡岗识别系统

监控室值班人员脱岗睡岗识别系统基于Yolov7深度学习神经网络算法,监控室值班人员脱岗睡岗识别系统可以7*24小时不间断自动监控总监控室值班人员是否在工位上(脱岗睡岗玩手机),若值班人员没有在总监控室系统则立即抓拍告警,算法鲁棒性强。监控室值班人员脱岗睡岗识别系统检…

监控室值班人员脱岗识别系统

监控室值班人员脱岗识别系统通过AI视觉技术,监控室值班人员脱岗识别系统实现企业总监控室值班人员脱岗、睡岗、玩手机等场景的AI识别,不需人为干预全天候自动识别。监控室值班人员脱岗识别系统通过建设视频监控智能识别功能赋能企业端,监控室值班人员脱岗识别系统对各个生产…

非煤矿山电子封条

非煤矿山电子封条 支持对接甘肃省矿山监管平台通过AI智能分析技术,非煤矿山电子封条可以实现矿山与甘肃省应急管理部门互联互通,非煤矿山电子封条 支持对接甘肃省矿山监管平台通过在关键地点(关键位置包括矿山主副井口、风井口、车辆出入口和调度室)安装摄像机,非煤矿山电…

甘肃省非煤矿山电子封条建设方案

甘肃省非煤矿山电子封条建设方案通过AI视频智能分析技术,甘肃省非煤矿山电子封条建设方案利用在煤矿风井口、煤矿调度室、煤矿主副井口、矿区车辆出入口重要位置安装摄像机,甘肃省非煤矿山电子封条建设方案对非煤矿区生产作业状态以及矿井出井入井人员数量变化、监控室人员睡…

校园食堂明厨亮灶监控分析系统

校园食堂明厨亮灶监控分析系统通过yolov5网络模型技术,校园食堂明厨亮灶监控分析系统针对校园餐厅后厨厨师穿戴及行为进行7*24小时不间断实时分析预警,如:不按要求戴口罩、不穿厨师帽、陌生人员进入后厨、厨师不穿厨师服、上班时间玩手机、老鼠识别等行为。校园食堂明厨亮灶…

工服智能监测预警系统

工服智能监测预警系统通过yolov8网络模型算法,工服智能监测预警系统对摄像机画面内出现的人员着装穿戴实时监测,当检测到现场人员未按要求穿戴工服工装则输出报警信息,通知后台值班人员及时处理。工服智能监测预警系统无需新增硬件,利用最新的深度学习技术,基于现场监控视…

ai皮带跑偏撕裂监测系统功能

ai皮带跑偏撕裂监测系统功能基于人工智能视觉技术,ai皮带跑偏撕裂监测系统功能自动识别现场监控画面中传送皮带撕裂、跑偏、偏移等情况,当ai皮带跑偏撕裂监测系统功能检测出皮带出现撕裂或者跑偏现象后,立即告警抓拍存档同步回传后台提醒及时处理,提高煤矿的智能化水平和人…

订单交易平台一

简介:订单交易平台核心的功能模块:认证模块,用户名密码 或 手机短信登录(60s有效)。角色管理,不同角色具有不同权限 和 展示不同菜单。 管理员,充值客户,下单客户管理,除了基本的增删改查以外,支持对客户可以分级,不同级别后续下单折扣不同。交易中心管理员可以给客…

学习“基于VirtualBox虚拟机安装Ubuntu图文教程”

安装过程中出现了很多问题第一次安装没有下载ubtun20.04 镜像 第二次安装不知道如何下载bzip2,导致一直安装增强功能 第三次在上B站搜索视频讲解后成功安装好了

wintools premium 24.10.1 注册分析

wintools premium 24.10.1 目录wintools premium 24.10.1NAGSCREEN_proc_472350check_472BF0pyps win32 程序,程序注册逻辑简单,关注窗口事件、控件id可快速定位到关键逻辑。 NAGSCREEN_proc_472350 INT_PTR __thiscall NAGSCREEN_proc_472350(void *this, HWND hDlg, UINT a…

项目部署二:服务器和环境配置

2.服务和环境配置 下面的配置和操作均在腾讯云服务器+CentOS 7.5的系统下进行。 2.1 MySQL安装服务端 yum install mariadb-server -y mariadb-server.x86_64 1:5.5.68-1.el7安装客户端 yum install mariadb -y 软件包 1:mariadb-5.5.68-1.el7.x86_64 已安装并且是最新版本服务…

freeRTOS源码解析4--tasks.c 7

4.2.20 空闲任务调用1--prvCheckTasksWaitingTermination 删除所有终止的任务, 释放资源。简单描述就是清空xTasksWaitingTermination列表,释放资源,递减uxCurrentNumberOfTasks和uxDeletedTasksWaitingCleanUp。接口:static void prvCheckTasksWaitingTermination( void )接…