贪心,CF 1891C - Smilo and Monsters

news2024/11/23 11:43:31

一、题目

1、题目描述

2、输入输出

2.1输入

2.2输出

3、原题链接

1891C - Smilo and Monsters


二、解题报告

1、思路分析

操作二显然很划算的,但是操作2有代价,为了更划算,我们要让操作2的操作次数最少

即,操作二尽可能用在血量高的怪物身上

也就是说,小怪我们是一下一下打来累计能量,然后大怪用攒的能量秒杀

我们考虑最多要攒多少能量?

sum / 2,即总血量下取整,这是操作2只能作用于血量不少于当前combo的怪物这一规则决定的

然后我们从大到小遍历,能用能量打死就打死,能量消耗完后剩下的一下一下打死即可

2、复杂度

时间复杂度: O(NlogN)空间复杂度:O(N)

3、代码详解

 ​
#include <bits/stdc++.h>
#define sc scanf
using i64 = long long;

constexpr double eps = 1e-9;

void solve() {
    int n;
    std::cin >> n;
    std::vector<int> a(n);
    i64 t = 0;
    for (int i = 0; i < n; ++ i) std::cin >> a[i], t += a[i];
    std::sort(a.rbegin(), a.rend());
    i64 res = 0;
    t /= 2;
    for (int i = 0; i < n; ++ i) {
        if (t >= a[i])
            t -= a[i], a[i] = 0;
        else if(t)
            a[i] -= t, t = 0;
        else
            break;
        ++ res;
    }
    res += std::accumulate(a.begin(), a.end(), 0LL);
    std::cout << res << '\n';
}

int main() {
    #ifdef DEBUG
    freopen("in.txt", "r", stdin);
    freopen("out.txt", "w", stdout);
    #endif
    std::ios::sync_with_stdio(false), std::cin.tie(nullptr), std::cout.tie(nullptr);
    int _ = 1;
    std::cin >> _;
    while (_ --)
        solve();
    return 0;
}

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

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

相关文章

Apollo docker-compose

来源 https://www.apolloconfig.com/#/zh/deployment/quick-start-docker 路径 /usr/apollo Sql 自己复制 Vim docker-compose.yml #如果安装过了 记得删除mysql 历史文件 rm -r /var/lib/mysql version: 2.1services:apollo-quick-start:image: nobodyiam/apollo-quick…

MongoDB教程(六):mongoDB复制副本集

&#x1f49d;&#x1f49d;&#x1f49d;首先&#xff0c;欢迎各位来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里不仅可以有所收获&#xff0c;同时也能感受到一份轻松欢乐的氛围&#xff0c;祝你生活愉快&#xff01; 文章目录 引言一、MongoD…

React 速通笔记

前言 最近刚学完 React&#xff0c;想着把笔记分享给大家&#xff0c;本笔记特别适合从事后端想要学习前端的人。我看视频是黑马最新的 React 视频&#xff08;黑马程序员前端React18入门到实战视频教程&#xff0c;从reacthooks核心基础到企业级项目开发实战&#xff08;B站评…

Windows 2012安装之实现远程连接

新建虚拟机 点击稍后安装操作系统 点击Microsoft Windows(W) 选择Windows Server 2012 设置虚拟机名称、安装位置 选择你的电脑核数 点击编辑虚拟机设置 点击CD/DVD(SATA) 使用ISO映像文件(M) 配置完之后点击确定 然后开启虚拟机 下一步&#xff1a; 点击现在安装&#xff1a…

51单片机(STC8H8K64U/STC8051U34K64)_RA8889驱动大屏_硬件SPI4_参考代码(v1.3)

单片机实际不限&#xff0c;这里采用的STC最新、主推的型号&#xff0c;比如STC8H8K64U、STC8051U34K64进行实验测试&#xff0c;您可以换用不同型号。目前测试这两个系列&#xff0c;显示速度均相当不错&#xff0c;软件设计也是极为简单。各篇文章下方均提供源码供参考下载。…

Java 反射用法和8道练习题

目录 一、什么是反射二、反射的核心接口和类三、测试代码 Bean 类和目录结构Person 类代码目录结构 四、获取 Class 对象五、获取构造方法 Constructor 并使用六、获取成员变量 Field 并使用七、获取成员方法 Method 并使用八、练习1. 使用反射获取String类的所有公有方法&…

在python里构建你的投资组合portfolio--最好用的pandas零基础

有人可能觉得软件数据分析门槛很高&#xff0c;自学也坚持不下来&#xff0c; 其实分解成一个小的功能和任务&#xff0c;对零基础自学者非常有帮助。 今天用python中最好用的数据分析包pandas为例&#xff1a; 用最简单的代码完成全流程 构建投资组合 → 获取数据 → 进行分…

均匀性大于98%均匀光源积分球

在光学技术的浩瀚星空中&#xff0c;均匀光源积分球犹如一颗璀璨的明珠&#xff0c;以其卓越的均匀性能&#xff0c;照亮了科研、检测、照明等多个领域的探索之路。当谈及均匀性超过98%的积分球时&#xff0c;我们不禁要深入其内部&#xff0c;探索这一科技奇迹背后的原理与应用…

phenocycler发现免疫治疗反应关键的肿瘤微环境区域

T 细胞介导的抗原特异性反应对于有效的免疫监视至关重要。然而T细胞如何进入肿瘤微环境并操纵局部组织微环境来实现效应器功能&#xff0c;以及这些局部的细胞结构如何对T细胞疗法或者其他免疫治疗做出反应仍然不清楚。近期来自斯坦福大学的研究者利用小鼠模型和临床患者样本&a…

10位工程师做SW大装配设计工作站怎么选

在日益复杂的工程环境中&#xff0c;SolidWorks&#xff08;SW&#xff09;作为一款全球装机量较大的三维设计、动画、仿真模拟计算软件&#xff0c;已成为工程师们不可或缺的工具。 对于涉及大型装配设计的项目&#xff0c;选择一款合适的SW工作站显得尤为关键。在选择SW大装…

【0630开发者活动】机器学习算法在存内计算芯片WTM2101上的部署

前言 WTM2101芯片是由Witin知存科技开发的高性能存内计算芯片&#xff0c;专为加速AI计算设计&#xff0c;如图1.1所示。存内计算作为一种革命性技术&#xff0c;其主要优势在于将计算功能直接集成到存储器中&#xff0c;从而显著减少数据在芯片内部的传输距离&#xff0c;降低…

【学术会议征稿】2024年第三届信息学,网络与计算技术国际学术会议(ICINC2024)

2024年第三届信息学&#xff0c;网络与计算技术国际学术会议(ICINC2024) 2024 3rd International Conference on Informatics,Networking and Computing (ICINC 2024) 2024年第三届信息学&#xff0c;网络与计算技术国际学术会议(ICINC2024)将于2024年10月25-27日于中国郑州召…

Django任务管理:项目定时执行及简单管理界面

1、用django-admin命令创建一个Django项目 django-admin startproject task_manager 2、进入到项目下用命令创建一个应用 cd task_manager python manage.py startapp tasks 3、进入models.py定义数学模型 第2步得到的只是应用的必要空文件&#xff0c;要开始增加各文件实际…

PostgreSQL的学习心得和知识总结(一百四十八)|查看 PostgreSQL 17 中的新内置排序规则提供程序

目录结构 注&#xff1a;提前言明 本文借鉴了以下博主、书籍或网站的内容&#xff0c;其列表如下&#xff1a; 1、参考书籍&#xff1a;《PostgreSQL数据库内核分析》 2、参考书籍&#xff1a;《数据库事务处理的艺术&#xff1a;事务管理与并发控制》 3、PostgreSQL数据库仓库…

MongoDB Atlas Vector Search再度荣获最受欢迎的向量数据库称号

最新发布的《2024 年 Retool AI 现状报告》显示&#xff0c;MongoDB Atlas Vector Search 再次荣获最受欢迎的向量数据库称号&#xff0c;这已是它连续第二年获此殊荣。 Atlas Vector Search 在净推荐值 &#xff08;NPS&#xff09;方面斩获最高分&#xff0c;这一指标精准反映…

【python】pandas报错:UnicodeDecodeError详细分析,解决方案以及如何避免

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

一文带你看懂SAP-HANA的基本架构与原理

注&#xff1a;本篇主要对SAP HANA做了总结与论述&#xff0c;如有错误欢迎读者提出并补充 创作不易,希望大家一键三连支持!!!♥♥♥ 创作不易,希望大家一键三连支持!!!♥♥♥ 创作不易,希望大家一键三连支持!!!♥♥♥ 目录 一. 背景引入1.1 硬件与数据库系统1.2 行业现状 …

MongoDB自学笔记(一)

一、MongoDB简介 MongoDB是一款基于C开发的文档型数据库。与传统的关系型数据库有所不同&#xff0c;MongoDB面向的是文档&#xff0c;所谓的文档是一种名为BSON &#xff08;Binary JSON&#xff1a;二进制JSON格式&#xff09;是非关系数据库当中功能最丰富&#xff0c;最像…

萝卜快跑爆火的背后,美格智能如何助力无人车商业化?

近期&#xff0c;“订单量超过600万单”等夺人眼球的信息&#xff0c;让无人驾驶出租车“萝卜快跑”从江城武汉爆火出圈&#xff0c;在2024年的炎炎夏日为这座大火炉再添了一把火。热度背后&#xff0c;不少地方主管部门&#xff0c;近期也纷纷针对无人驾驶出租车、无人驾驶运输…

【C++】多态-最全解析(多态是什么?如何使用多态?多态的底层原理是什么?)

目录 一、前言 二、多态是什么&#xff1f; 三、多态的定义及实现 &#x1f525; 多态的构成条件&#x1f525; &#x1f525; 虚函数的重写&#x1f525; &#x1f525;虚函数重写的两个例外 &#x1f525; &#x1f34d; 协变返回类型 &#x1f95d; 析构函数的重写…