题解:P12558 [UOI 2024] Heroes and Monsters

news/2025/9/19 8:24:16/文章来源:https://www.cnblogs.com/a1a2a3a4a5/p/19099348

题面:

(这个没交洛谷,给学弟写的。)

\(O(n^3)\)

考虑直接求出所有 \(ans_i\),前缀和回答询问。
\(a,b\) 先排序。由于我们只关心英雄的集合,所以怪兽我们贪心选择,如果我们选这个英雄那么选最前面的怪兽,否则选后面第一个能打死自己的怪兽。显然,合法方案怪兽的前缀会被英雄打死,后缀会打死英雄,显然了就不证。
\(f_{i,j}\):前 i 个英雄匹配了 j 个怪兽的方案数。
这时我们发现我们选后面第一个能打死自己的怪兽可能会碍后面想打怪兽的英雄的事,所以枚举断点 \(k\)
我们让钦定去悲伤的英雄去选择 \([k+1,n]\) 的怪兽,高兴的英雄去选 \([1,k]\) 的怪兽。

\(f_{i,j}=f_{i-1,j-1}[b_j<a_i]+f_{i-1,j}[b_{k+1+(i-1-j)>a_i}]\)

\(O(n^2)\)

我们找到 \(a_p<b_k<a_{p+1}\) 这样的 \(p\)
那么 \([1,p]\) 的英雄肯定能找到比自己大的怪兽,\([p+1,n]\) 的英雄肯定能找到比自己小的怪兽,并且互不冲突。
那么我们只需要考虑前缀是否能找到比自己小的怪兽,后缀能否找到比自己大的怪兽。

\(f_{i,j}\)\([1,i]\) 的英雄 \(j\) 个找到了比自己小的怪兽的方案数。
\(g_{i,j}\)\([i,n]\) 的英雄 \(j\) 个找到了比自己大的怪兽的方案数。

下面是转移(\(g\) 我们倒着更新,那么肯定是取后缀怪兽):

\(f_{i,j}=f_{i-1,j-1}[b_j<a_i]+f_{i-1,j}\)
\(g_{i,j}=g_{i+1,j-1}[b_{n-(j-1)}>a_i]+g_{i+1,j}\)

那么我们枚举一个数 \(c\),表示 \([1,p]\)\(c\) 个高兴的英雄,那么 \([p+1,n]\)\((k-c)\) 个高兴的英雄。
直接合并就好了。

\(ans_m=\sum_{c=0}^m f_{p,c}×g_{p+1,n-p-(k-c)}\)

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

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

相关文章

qt QHPieModelMapper详解 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

webRTC golang 构建核心

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

数据分析与产品、运营、市场之间如何有效对齐 - 详解

数据分析与产品、运营、市场之间如何有效对齐 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&quo…

(附源码)基于Java的学生托管系统的设计与实现 - 实践

(附源码)基于Java的学生托管系统的设计与实现 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&q…

agentgateway 简单试用

agentgateway 简单试用以下是一个简单示例,主要测试多mcp tools 的聚合,集成了基于litserve 的mcp server 以及genai toolbox 安装 目前github 上暂时未系统mac x86 架构的包,可以自己编译命令git clone https://gi…

SVG动画优化全攻略:从设计到性能提升

本文详细介绍了如何通过清洁设计、路径简化、代码分层和元素复用等技术优化SVG动画,涵盖工具选择、结构设计到CSS动画实现的全流程,帮助开发者创建高性能的SVG动画效果。粉碎动画第四部分:优化SVG SVG动画让我回想起…

深入解析:Go 1.25.1 自定义包调用

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

MX 练石 2026 NOIP #7

0 + 10 + 10 + 0 = 20, Rank 152/199.好难好难好难好难,为数不多的罚坐了。 4h20min 怒砍 20pts /ohMX 练石 2025 NOIP #6 链接:link 题解:link 时间:4h20min (2025.09.18 13:50~18:10) 题目数:4 难度:A B C D估…

多元积性函数

定义:若函数 \(f(n,m)\) 满足 \(ab \perp xy \Rightarrow f(ax,by)=f(a,b)f(x,y)\),则称 \(f\) 为二元积性函数。 积性分解:将 \(x=\prod p_i^{\alpha _i},y=\prod p_i^{\beta _i}\),则有 \(f(x,y)=\prod f(p_i^{\…

国内AI云市场:挤不进前三,生存将成问题!

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 3546955410049087中国AI云市场已形成“一大四强”的格局,阿里云以35.8%的份额独占鳌…

P14053 [SDCPC 2019] Median 题解

P14053 [SDCPC 2019] Median 题解P14053 [SDCPC 2019] Median 题解 一道水题。 观察题意,很快我们可以发现,对于元素 \(i\),其合不合法取决于一定大于 \(i\) 的数的个数与一定小于 \(i\) 的数的个数。 这时,我们只…

lQueryDef查询Evaluate报该几何不包含M值问题。

地理数据库既包括空间,又包括属性,属性类似于SQL表,理论上支持标准SQL查询。lQueryDef接口提供了高效查询方法,适用于对属性表或要素类的属性进行筛选和检索。 问题描述 一个简单的面积求和示例如下:IQueryDefFac…

我的首个RCE漏洞发现之旅:Apache ActiveMQ远程代码执行实战

本文详细讲述了作者如何通过系统化的子域名枚举和端口扫描,发现Apache ActiveMQ的CVE-2023-46604远程代码执行漏洞的全过程,包含具体的工具使用方法和实战技巧。我的首个RCE漏洞发现经历 大家好!在这篇文章中,我将…

北京市社保费用差额补缴计算工具

北京市社保费用差额补缴计算工具9月18日北京市发布了社会保险缴费工资基数上下限调整的通告,自2025年7月起,社保基数下限由原来的 6821元提高到7162元。 这样一来,之前已经缴了7月份社保且社保基数不到7162元的就需…

使用自签名SSL证书有什么风险?

自签名SSL证书,指的是由用户自行生成密钥对并予以签名的证书,无需经由第三方权威证书颁发机构(CA)审核。鉴于其具备零成本、生成便捷的特性,该证书常被应用于个人测试、内部临时服务等非生产场景。 然而,相较于权…

CDN可以使用iTrustSSL通配符证书吗?

CDN,即内容分发网络,它是一种通过在多个地理位置分散部署服务器节点,将网站的内容缓存并分发到离用户最近的节点上,从而显著提高网站内容的访问速度、降低延迟,并减轻源服务器负载的技术架构。借助CDN,网站能够更…

[ssh]:SecureCRT的配置

[ssh]:SecureCRT的配置[ssh]:SecureCRT的配置一、有用配置1.  Terminal  ->  Emulation 2.  Terminal  ->  Apperance 二、参考1.  无.本文由 lnlidawei 原创、整理、转载,本文来自于【博客园】…

OpenCvSharp基于颜色反差规避FBA面单贴标

01 规避原理 1.抠图,根据色差或者根据固定包裹位置以及包裹尺寸抠出纸箱图片 2.色差,获取纸箱上所有背景色的灰度值 3.采图,采集大量视野相同,光源相同面单的色差灰度值,整理区间 4.取反,所有非面单灰度值区间的…

[LeetCode] 3408. Design Task Manager

There is a task management system that allows users to manage their tasks, each associated with a priority. The system should efficiently handle adding, modifying, executing, and removing tasks. Implem…

从0开始的游戏全栈开发工程师学习记录

从0开始的游戏全栈开发工程师学习记录开始学习游戏开发