当前位置: 首页 > web >正文

每日OJ_牛客_AOE还是单体?_贪心_C++_Java

目录

牛客_AOE还是单体?_贪心

题目解析

C++代码

Java代码


牛客_AOE还是单体?_贪心

AOE还是单体?

描述:

牛可乐准备和 n 个怪物厮杀。已知第:个怪物的血量为 ai。牛可乐有两个技能:
第一个技能是蛮牛冲撞,消耗1 mp,可以对任意单体怪物造成 1点伤害。
第二个技能是蛮牛践踏,消耗 xmp ,可以对全体怪物造成 1 点伤害。
牛可乐想知道,将这些怪物全部击杀,消耗 mp 的最小值的多少?

输入描述:

第一行两个正整数 n 和  ,分别代表怪物的数量、每次蛮牛践踏消耗的 mp 值。

第二行 n 个正整数 a;,分别代表每个怪物的血量。

(1≤n< 200000,1≤x≤10°)
(1 ≤ai < 10°)

输出描述:

一个正整数,代表消耗mp的最小值。


题目解析

小贪心:

  1. 如果使用一次 AOE 造成的伤害比消耗的蓝量多,那就使用。
  2. 否则就一直使用单体伤害。


C++代码

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;int main()
{int n = 0, x = 0;cin >> n >> x;vector<int> arr(n + 1);for(int i = 1; i <= n; ++i){cin >> arr[i];}sort(arr.begin(), arr.end());int index = max(0, n - x); // 处理 x 过⼤的情况long long ret = arr[index] * x;for(int i = index + 1; i <= n; ++i){ret += arr[i] - arr[index];}cout << ret;return 0;
}

Java代码

import java.util.*;
public class Main
{public static void main(String[] args){Scanner in = new Scanner(System.in);int n = in.nextInt(), x = in.nextInt();int[] arr = new int[n];for(int i = 0; i < n; i++){arr[i] = in.nextInt();}Arrays.sort(arr);long ret = 0;int index = n - 1 - x;if(index < 0){for(int i = 0; i < n; i++) ret += arr[i];}else{ret += arr[index] * x;for(int i = index + 1; i < n; i++){ret += arr[i] - arr[index];}}System.out.println(ret);}
}
http://www.xdnf.cn/news/1219.html

相关文章:

  • MyBatis 和 MyBatis-Plus 在 Spring Boot 中的配置、功能对比及 SQL 日志输出的详细说明,重点对比日志输出的配置差异
  • 如何使用 Spring Boot 实现统一功能处理:从零开始打造高效、可扩展的后台系统
  • Feign 深度解析:Java 声明式 HTTP 客户端的终极指南
  • 乐视系列玩机---乐视1s x500 x501 x502等系列线刷救砖以及刷写第三方twrp 卡刷第三方固件步骤解析
  • 纽约大学具身智能体在城市空间中的视觉导航之旅!CityWalker:从海量网络视频中学习城市导航
  • 第六章 QT基础:1、入门操作:文件操作与信号槽机制笔记
  • StarRocks 异常 Table creation timed out.
  • 小白训练日记——2025/4/22
  • 虚拟机的网络配置
  • 美团外卖霸王餐接口该如何对接?
  • C++STL(七) :unordered_set、unordered_map的介绍及使用
  • transformer-位置编码
  • Lawrence Krauss 的“从无中诞生的宇宙”(Universe from Nothing)
  • MCP Host、MCP Client、MCP Server全流程实战
  • 耀百岁中医养生与上海隽生中医药研究中心达成战略合作——共筑中医养生科研创新高地
  • 乐视系列玩机---乐视1 x600系列线刷救砖以及刷写第三方twrp 卡刷第三方固件步骤解析
  • RK3588 ubuntu20禁用自带的TF卡挂载,并设置udev自动挂载
  • 学习思路分享---从0开始搭建基本web服务器
  • (一)初始Linux---------Linux的背景
  • spring中使用netty-socketio部署到服务器(SSL、nginx转发)
  • 【FPGA开发】Vivado开发中的LUTRAM占用LUT资源吗
  • 入门-C编程基础部分:17、typedef
  • 安卓投屏软件QtScrcpy
  • Node.js简介(nvm使用)
  • 删除不了jar包-maven clean package失败
  • 深入探索Spark-Streaming:从基础到核心编程
  • TCP/IP协议新手友好详解
  • 【以太网安全】——防护高级特性配置总结
  • 数字化转型“变形记”:中钧科技经营帮如何让企业长出“智慧骨骼”
  • 分部积分选取u、v的核心是什么?