梦熊 CSP—S模拟赛 T1 youyou的垃圾桶

server/2024/10/22 10:08:10/

原题链接​​​​​​

题目大意:

现在有 n 个敌人,第 i 个敌人的初始攻击力为正整数 a i 。初始生命值
为正整数 W
定义如下流程为一场战斗:
从第 1 个敌人开始,每个敌人依次循环进行攻击。第 i 个敌人发起攻
击时,生命值 W 减去 a i ,同时 a i 翻倍。
W 0 时,本场战斗立刻结束。然后重置生命值 W 以及所有敌人
的攻击力 a i 。定义本次战斗的评分为接受敌人攻击的次数(不包括致
命攻击)。
q 次询问,每次询问给出三个数 l , r , d ,表示对第 [ l , r ] 个敌人进行强化,
使每个敌人的 a i 增加 d ,然后立刻进行一场战斗。输出此次战斗的评
分。
询问之间相互影响。
解题思路:
那会在比赛的时候是没想出来的,暴力也没打,这道题感觉还行。
我们可以设所有垃圾桶当前攻击力总和为S。先考虑暴力做法,毕竟暴力出奇迹,因为当前生命值W≤10e18,攻击力是翻倍递增的,因此最多只会打log W轮。因此暴力的时间复杂度为O(nq logW) ,可以获得20pts。
接下来考虑正解。
假设这场战斗完整地打了 k 轮,那么这 k 轮需要消耗的生 命值为 S × (2 0 + 2 1 + · · · + 2 k 1 ) = S × (2 k 1) 。 即要求出最大的 m ,使得 m i =1 a i W S × (2 k 1) 答案即为 k × n + m 显然,对于每一次修改, S 只会增加 ( r i l i + 1) × d i对于每一个询问,我们需要求出最大的 k 。 发现 k 不需要每次都枚举,因为每次操作后,答案只会变小,也就是 k 是递减的。 对于相同的 k 递减。于是用指针维护 m 的值,同时用两个差分数组维护区间加即可。对于不同的 k ,暴力求解即可。
时间复杂度 O ( n log W + q )

http://www.ppmy.cn/server/133867.html

相关文章

【Spring MVC】创建项目和建立请求连接

我的主页:2的n次方_ 1. MVC MVC 是 Model View Controller 的缩写,它是软件⼯程中的⼀种软件架构设计模式,它把软件系统分为模型、视图和控制器三个基本部分。 View (视图): 指在应⽤程序中专⻔⽤来与浏览器进⾏交互&…

雷池WAF自动化实现安全运营实操案例终极篇

免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停…

Flutter 11 Android原生项目集成Flutter Module

本文主要讲解如何在已有的Android原生老项目中集成Flutter模块。 实现流程: 1、在Android原生项目根目录下,创建Flutter Module; 2、修改Android原生项目settings.gradle,绑定 Flutter Module; 3、修改Android原生…

ChatGPT 现已登陆 Windows 平台

今天,OpenAI 宣布其人工智能聊天机器人平台 ChatGPT 已开始预览专用 Windows 应用程序。OpenAI 表示,该应用目前仅适用于 ChatGPT Plus、Team、Enterprise 和 Edu 用户,是一个早期版本,将在今年晚些时候推出"完整体验"。…

Apache Doris简介

1.Doris 概述 Apache Doris 由百度大数据部研发(之前叫百度 Palo,2018 年贡献到 Apache 社区后, 更名为 Doris ) ,在百度内部, 有超过 200 个产品线在使用, 部署机器超过 1000 台, 单一 业务最大可达到上百…

超越 React Query:探索更高效的数据请求策略

你好,开发者们! 在前端开发的海洋中,我们常常遇到组件间通信的难题。你是否也曾为如何优雅地在组件间传递信息而头疼?今天,我想和大家分享一个让我眼前一亮的解决方案——使用 alova。 跨组件触发请求的挑战 想象一…

JavaScript 第25章:Vue 基础

在学习JavaScript的第25章关于Vue的基础知识时,我们将从以下几个方面来了解Vue框架,并通过一个实战案例来巩固所学的知识。 Vue概述 Vue.js是一个用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用。…

Android15之解决scrcpy显示Launcher桌面不全问题(二百三十七)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【…