20240703总结(费用流)

news/2024/7/6 9:33:49/文章来源:https://www.cnblogs.com/wangwenhan/p/18282641

A - Going Home

HDU1533 Going Home
题解:费用流板子题,没什么好说的

B - Boxes

SOPJ Boxes
题解:又一道费用流板子题,但是我以为它是个序列然而它是个环

C - The Most Reckless Defense

The Most Reckless Defense CF1955H
题解:省流,写了篇题解:
为什么所有题解都是状压 DP ,这题不是看着很网络流(最小费用最大流)吗?

首先还是分析一下 \(r\) 的取值范围,可以把敌人增加的血量理解为减少防御塔的伤害,那么一座防御塔的总伤害最多是 \(500\pi r^2 - 3^r\),不难发现 \(r\) 最大为 \(12\),这就很符合网络流的范围。

接下来建图,把防御塔当作左部点,半径为右部点。有几种类型的边:

\(1\) 类:源点向左部点连边,流量为 \(1\),费用为 \(0\)

\(2\) 类:右部点向汇点连边,流量为 \(1\),费用为 \(0\)

\(3\) 类:每一个左部点向每一个右部点连边,流量为 \(1\),费用为这座防御塔在这个半径下的总伤害(减去了敌人增加的血量)的相反数。

对第 \(3\) 类边做一下解释:

费用流求的是最小费用,但是我们要求的是最大的伤害,所以取一个相反数,输出的时候反过来就行了。当然如果本来就是个负数肯定不连。

D - Heidi and Library (hard)

CF802C Heidi and Library (hard)
题解:考虑我们买了所有的书然后删掉一些的过程。

拆点,每个点有买和卖两个点。先从源点连向所有的买点,流量为1,费用为这本书价值。

然后每个买点向卖点连边,流量为1,费用为0,卖点向汇点连边,流量为1,费用为0

每一个买点向下一个买点连边,流量为k-1,费用为0,因为下一本书还要占一个位置

最后如果一本书之前有和它同类型的书,它的上一个买点连向上一本与它同类型的书,流量为1,费用为这种类型的书的价格的相反数(相当于上一种删掉一个同类型的书)

E - Machine Programming

CF164C Machine Programming
题解:对于每个任务,我们新建两个时间节点s[i]和t[i]代表起始时刻与终止时刻,并连一条容量为1,费用为c[i]的单向边。这类边限制了每个任务最多只能交给一台机器做,并且做了可以得到c[i]的利润。虑到值域很大,要离散化。

除此之外,还要按照时间顺序,将所有相邻的时间节点连接起来。将这些边的容量都设置为k,费用为0。也就是说每时每刻机器数量不能超过k,且闲置机器可以留到后面用,但不会得到利润。

现在我们把源点连向初始时间,最终时间连向汇点,跑最大费用最大流就可以了。输出方案时,只需要检查任务i对应的边有没有流量流经,有的话说明该任务被选择了。

G - 工作安排

P2488 [SDOI2011] 工作安排
题解:基本上就是版题,源点向每个员工多连几条边,设置一下流量即可

H - 软件开发

P2223 [HNOI2001] 软件开发
题解:先拆点,把每一天拆成早上和晚上(可以理解为早上是干净的毛巾,晚上是脏毛巾)。

源点和每天早上连边,流量为INF,费用为f,代表买新毛巾

源点和每天晚上连边,流量为当天所需的毛巾,意为一天结束获得这么多脏毛巾

早上和汇点连边,流量为当天所需的毛巾,费用为0,代表供应这么多新毛巾

第i天的晚上和第i+a+1天的早上连边,流量为INF,费用为fa(洗a天要a+1天后才能用)

第i天的晚上和第i+b+1天的早上连边,流量为INF,费用为fb(洗b天要b+1天后才能用)

I - 数字配对

P4068 [SDOI2016] 数字配对
题解:题目要求获得总价值不小于0的情况下匹配数最多,于是我们直接二分匹配数(流量)

考虑ai是aj倍数且ai除aj结果为质数的连边条件。可以把他们质因数分解,那么如果ai是aj的倍数且ai的质因子个数(重复的也算)比aj的大1,就可以匹配,所以根据质因子个数奇偶分成左部点和右部点,然后建一个超级汇点方便我们二分。剩下的建边就很简单了。

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

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

相关文章

1s内控制向某个请求请求的次数

背景 有的时候后端提供的接口对相同的IP进行限制,在某个时间内不能发送超过X条的请求,一旦超过指定的请求数会导致后续请求接口会出现异常。 效果需求 比如:在1s内最多同时发送2个请求,多出来的请求在后续的1s或者后续的Ns中发起 代码 <template><div class="…

电脑hold escape key to prevent startlsback怎么处理?

电脑出现hold escape key to prevent StartlsBack from,一般遇到这种问题之后,一直按住ESC键就没有了。但是还需彻底的解决掉这个问题。 首先我们按下“ctrl +alt +del”组合键打开任务管理器,左上角“运行新任务”,输入“control”并确定,就可以打开控制面板,查看方式为…

7.3日RTOS自学心得

我现在用的单片机主要是裸机系统,轮询系统和前后台系统(中断处理),但是为了以后的职业发展肯定还是要学习下操作系统的,也就是多任务系统FreeRTOS,在看野火的资料【[野火]uCOS-III 内核实现与应用开发实战指南】,学习到了第六章,任务的定义与任务切换的实现。 总结如下…

fisher线性判别分析和多分类问题探究

本文继续来讨论另一种分类模型————fisher线性判别分析 目录一、模型思想二、SPSS的实现1.参数设置(1)定义范围(2) 统计(3)保存与分类2.结果分析(1)典则判别函数系数(2)分类结果(3)分类函数系数(4)保存预测结果四、多分类问题 一、模型思想 我们以二分类问题举例…

[Paper Reading] GAIA-1: A Generative World Model for Autonomous Driving

GAIA-1: A Generative World Model for Autonomous Driving GAIA-1 时间:23.09 机构:Wayve TL;DR 本文介绍一种生成世界模型,该模型利用视频、文本和动作输入来生成逼真的驾驶场景,同时提供对自身车辆行为和场景特征的细粒度控制。 Method模型输入 训练过程输入video/text(…

进度报告1

(1)1.在黑马程序员中找到java的教学网课,初步学习了Java语言的概述以及完成了java的开发环境搭建,成功安装了jdk并且利用命令行窗口顺利验证java和javac是否正常安装并且能使用。2.编写入门代码helloworld代码:public class HelloWorld{ public static void main(String[]…

模拟集成电路设计系列博客——8.4.2 时间-数字转换器

8.4.2 时间-数字转换器 在上一节我们介绍了TDC的一种典型实现,即单延时链TDC,通过\(2^N\)的延迟单元和D触发器可以实现N bit的时间数字转换功能,但这种结构的分辨率受到延迟单元的最小延迟时间限制,即: \[LSB=\tau_{delay}=\frac{T}{2^N} \tag{8.4.10} \]其中\(T\)为TDC的…

聊一聊领域驱动与贫血模型

写在前面 前段时间跟领导讨论技术债概念时不可避免地提到了代码的质量,而影响代码质量的因素向来都不是单一的,诸如项目因素、管理因素、技术选型、人员素质等等,因为是技术债务,自然就从技术角度来分析,单纯从技术角度来看代码质量,其实又细分很多原因,如代码设计、代码…

《智能计算系统》第五章 编程框架原理(上)课程笔记

《智能计算系统》第五章 编程框架原理(上)课程视频链接:https://www.bilibili.com/video/BV1Ei421i7Rg 本文源自于B站国科大计算所 智能计算系统课程官方账号 所公开上传的视频,在原有视频之上,提取了关键帧、将音频转成了文字并进行了校正,以便学习使用。在此,也感谢国…

点云分割网络---Point Transformer V2

PDF: 《Point Transformer V2: Grouped Vector Attention and Partition-based Pooling》 CODE: https://github.com/Gofinge/PointTransformerV2 一、大体内容 前面一篇文章介绍了Point Transformer,这一篇在其基础上进行改进,提出了强大且高效的Point Transformer V2模型,…

【坚果识别】果实识别+图像识别系统+Python+计算机课设+人工智能课设+卷积算法

一、介绍 坚果识别系统,使用Python语言进行开发,通过TensorFlow搭建卷积神经网络算法模型,对10种坚果果实(杏仁, 巴西坚果, 腰果, 椰子, 榛子, 夏威夷果, 山核桃, 松子, 开心果, 核桃)等图片数据集进行训练,得到一个识别精度较高的模型文件,让后使用Django搭建Web网页端…

MRCTF 2022 EzJava

MRCTF 2022 EzJava 题目分析 下载附件得到一个 jar 包和一个 waf 配置文件。如果只是为了本地搭建环境,直接启动 jar 包就行了,但是如果需要进行远程调试就需要进行一些配置(这个网上教程很多),这个调试也要看具体需求,能直接打通的话就不需要调试。 但是不管怎么说,第一…

逻辑回归求解二分类问题以及SPSS的实现

分类问题就是给出物质的属性,判断其属于什么成分,本文将讲述逻辑回归求解二分类问题 本文着重于模型的实现,对于推导只是概括性的叙述 目录一、问题提出二、逻辑回归函数logistic1.线性线性概率模型2.sigmod函数3.求解方法————极大似然估计4.分类原则三、SPSS实现———…

线上的一次fullgc排查过程

线上服务的GC问题,是Java程序非常典型的一类问题,非常考验工程师排查问题的能力。同时,几乎是面试必考题,但是能真正答好此题的人并不多,要么原理没吃透,要么缺乏实战经验。过去半年时间里,我们的广告系统出现了多次和GC相关的线上问题,有Full GC过于频繁的,有Young G…

基于GWO灰狼优化的LDPC码NMS译码算法最优归一化参数计算和误码率matlab仿真

1.算法仿真效果 matlab2022a仿真结果如下(完整代码运行后无水印):2.算法涉及理论知识概要LDPC码是一种线性错误修正码,以其接近香农极限的优良性能而被广泛应用于现代通信系统中。NMS译码是一种基于最小平方误差准则的软判决译码方法,其目标是找到一个最可能的码字,使得接…

k8s-核心组件

核心组件组成 Kubernetes 主要由以下几个核心组件组成: - etcd :保存整个集群的状态 - API Server:提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制 - Controller Manager:负责维护集群的状态,如故障检测、自动扩展、滚动更新等 - Scheduler:…

学习笔记485—Excel技巧:一键将文本数字转换为数值

Excel技巧:一键将文本数字转换为数值在使用Excel进行数据处理时,经常会遇到数据格式不匹配的问题。特别是当从外部导入数据或手动输入数据时,数字可能会被误识别为文本格式,这在进行数据计算和分析时会带来诸多不便。幸运的是,Excel提供了一些便捷的方法,可以帮助我们一键…

使用IDEA给项目打jar包

使用IDEA给项目打jar包参考地址:https://www.cnblogs.com/blog5277/p/5920560.html 感谢作者一、准备一个Java项目并先看看效果 ​ 只想打包,就跳过这一步: 一、准备一个Java项目并先看看效果。 ​ 如果启动jar包遇到报错:无法找到/加载主类就去看看第二步开头。 1、找一…

MCU点灯

MCU点灯 芯片型号:STM32F407ZET6 4个LED灯,网络标号分别为LED0 ,LED1,FSMC D10,FSMC D11。对应的引脚号分别为PF9,PF10,PE12,PE13。原理图//1.定义变量 GPIO_InitTypeDef GPIO_InitStructureF;//F端口 GPIO_InitTypeDef GPIO_InitStructureE;//E端口 int main()//中文注释 …

电子计算机类比赛的“武林秘籍”-电赛光电设计大赛计算机设计大赛嵌入式芯片与系统设计竞赛,你要的都在这里!

本文主要介绍了工科类学生参加比赛的必要性和益处、电子计算机类比赛的基本思路等内容电子计算机类比赛的“武林秘籍”-电赛光电设计大赛计算机设计大赛嵌入式芯片与系统设计竞赛,你要的都在这里! 为什么需要参加电子计算机类比赛 对于实现短期目标而言: 电子计算机类学科竞…