华为OD机试真题【服务器能耗统计】

1、题目描述

【服务器能耗统计】
服务器有三种运行状态:空载、单任务、多任务,每个时间片的能耗的分别为1、3、4;
每个任务由起始时间片和结束时间片定义运行时间;
如果一个时间片只有一个任务需要执行,则服务器处于单任务状志;
如果一个时间片有多个任务需要执行,则服务器处于多任务状态;
给定一个任务列表,请计算出从第一个任务开始,到所有任务结束,服务器的总能耗。

【输入描述】
第一行的数字表示一共有多少个任务
后续每行包含由空格分割的两个整数,用于确定每一个任务的起始时间片和结束时间片;
任务执行时间包含起始和结束时间片,即任务执行时间是左团右闭的;
结束时间片一定大于等于起始时间片;

【输出描述】
一个整数,代表服务器的总能耗

【样例1】
输入:
2
2 5
8 9
输出:
20
解释:
[0,1]没有任务需要执行,能耗为0
[2,5]处于单任务状态,能耗为34=12
[6,7]处于空载状态,能耗为1
2=2
[8,9]处于单任务状态,能耗为3*2=6
共计能耗为12+2+6=20

【样例2】
输入:

3
4 8
1 6
2 9
输出:
34
解释:
[0,1]没有任务需要执行,能耗为0
[1,1]处于单任务状态,能耗为31=3
[2,8]处于多任务状态,能耗为4
7=28
[9,9]处于单任务状态,能耗为3*1=3
共计能耗为3+28+3=34

2、解题思路

统计出最小和最大的运行时间,并统计从0到最大运行时间之间每个时间的任务数量,遍历每个任务的开始时间到结束时间并将其任务数量加一。最后,遍历统计的任务数量,空载消化1,单任务消化3,多任务消化3,注意是最小开始时间到最大结束时间之间。

3、参考代码

import java.util.Scanner;/*** @Author* @Date 2023/5/5 22:55*/
public class 服务器能耗统计 {public static void main(String[] args) {Scanner in = new Scanner(System.in);while (in.hasNext()) {int num = in.nextInt();int[][] times = new int[num][2];int minTime = Integer.MAX_VALUE;int maxTime = 0;for (int i = 0; i < num; i++) {times[i][0] = in.nextInt();times[i][1] = in.nextInt();minTime = Math.min(minTime, times[i][0]);maxTime = Math.max(maxTime, times[i][1]);}System.out.println(total(num, times, minTime, maxTime));}}public static int total(int num, int[][] times, int minTime, int maxTime) {// 统计每个时间的任务数int[] time = new int[maxTime + 1];for (int i = 0; i < num; i++) {for (int j = times[i][0]; j <= times[i][1]; j++) {  // 遍历开始时间到结束时间time[j]++;}}int res = 0;for (int i = minTime; i <= maxTime; i++) {if (time[i] == 0) {  // 空载res += 1;} else if (time[i] == 1) {  // 单任务res += 3;} else {res += 4;}}return res;}
}

4、相似题目

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

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

相关文章

Atcoder Regular Contest 165

B. Sliding Window Sort 2 被题目名里的滑动窗口误导了&#xff0c;于是卡 B 40min /fn Description 给定长度为 \(n\) 的排列 \(P\) 和一个整数 \(K\)。一次操作定义为选择一个长度为 \(K\) 的区间&#xff0c;对原排列的这段区间升序排序&#xff0c;其余位置不变。 你要执行…

九大装修收纳空间的设计,收藏备用!福州中宅装饰,福州装修

如果房子面积不大&#xff0c;收纳设计就显得非常重要。其实装修房子中很多地方都可以做收纳&#xff0c;九大空间每一处都可以放下你的东西&#xff0c;让你摆脱收纳烦恼。 收纳空间少的话&#xff0c;装修完后住久了怕会乱成一窝&#xff0c;因此装修的时候&#xff0c;收纳…

java spring cloud 工程企业管理软件-综合型项目管理软件-工程系统源码

鸿鹄工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离构建工程项目管理系统 1. 项目背景 一、随着公司的快速发展&#xff0c;企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性&#xff0c;公司对内部工程管…

3D模型格式转换工具HOOPS Exchange助力Halocline开发VR

挑战&#xff1a; 支持客户群使用各种CAD系统和CAD文件格式。快速准确的加载可视化硬件数据。提供访问模型详细信息&#xff0c;同时确保高帧频性能。 结果&#xff1a; 确保支持标准文件格式和来自领先工程软件包的CAD数据。 通过查看简化模型或根据需要访问高层次的细节&am…

面试题20231008

前端 2023年前端面试题汇总-CSDN博客 后端 1.Java基础 容器、线程等等 a.JDK 和 JRE 有什么区别&#xff1f; JDK&#xff1a;Java Development Kit 的简称&#xff0c;Java 开发工具包&#xff0c;提供了 Java 的开发环境和运行环境。 JRE&#xff1a;Java Runtime Envir…

Flutter安卓混淆的相关问题

当你执行 build apk 后&#xff0c;flutter会默认进行混淆&#xff0c;若你的应用中引用了第三方的sdk&#xff0c;在debug模式下没问题&#xff0c;但在release下可能就会出现各种各样的问题&#xff0c;找不到某个类&#xff0c;或者某个功能无法使用&#xff0c;甚至直接崩溃…

【多线程案例】设计模式-单例模式

1.单例模式 什么是单例模式&#xff1f; 所谓单例&#xff0c;即单个实例。通过编码技巧约定某个类只能有唯一一个实例对象&#xff0c;并且提前在类里面创建好一个实例对象&#xff0c;把构造方法私有化&#xff0c;再对外提供获取这个实例对象的方法&#xff0c;&#xff0…

嵌入式养成计划-31-网络编程----TCP的并发服务器模型------IO模型--IO多路复用

六十七、 TCP的并发服务器模型 67.1 循环服务器模型 一次只能处理一个客户端&#xff0c;当上一个客户端退出后&#xff0c;才能处理下一个客户端缺点&#xff1a;无法同时处理多个客户端 代码模型 sfd socket(); bind(); listen(); while(1){newfd accept();while(1){re…

vue-3

一、文章内容概括 1.生命周期 生命周期介绍生命周期的四个阶段生命周期钩子声明周期案例 2.工程化开发入门 工程化开发和脚手架项目运行流程组件化组件注册 二、Vue生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09…

数据结构和算法笔记1:滑动窗口

在一些数组或者字符串我们需要遍历子序列&#xff0c;可能要用到两个指针&#xff08;我们称为起始指针和终止指针&#xff09;进行双层遍历&#xff0c;内层终止指针满足条件时跳出内层循环&#xff0c;然后起始指针前进&#xff0c;回溯终止指针到起始指针&#xff0c;以此继…

取消激光雷达/不升级Orin,小鹏P5改款背后的行业「痛点」

9月25日&#xff0c;小鹏汽车正式发布了旗下改款车型—2024款小鹏P5&#xff08;15.69-17.49万元&#xff09;。车型精简、降本增效&#xff08;减配&#xff09;成为新亮点。 在配置变化方面&#xff0c;智驾成为牺牲品。其中&#xff0c;高配Pro车型继续保留英伟达Xavier&…

CCC、ICCE和ICCOA数字钥匙协议

文章目录 一、CCC二、ICCE三、ICCOA四、比较 一、CCC CCC&#xff08;Car Connectivity Consortium&#xff09;车联网联盟是一个致力于制定智能手机到汽车连接解决方案标准的全球跨行业组织。2021年7月CCC将UWB定义为第三代数字钥匙的核心技术&#xff0c;并发布CCC R3&#…

如何领取京东优惠券用微信支付还是用支付宝支付购买商品?

京东用微信支付还是用支付宝支付&#xff1f; 京东商城购物不支持支付宝支付&#xff0c;现京东商城支持的支付方式包括&#xff1a;京东支付、银行卡、信用卡、微信支付、云闪付等&#xff1b; 京东如何领取优惠券用微信支付购物&#xff1f; 1、打开京东APP&#xff0c;挑选…

存档&改造【04】二维码操作入口设置细节自动刷新设置后的交互式网格

因为数据库中没有数据无法查看设置效果&#xff0c;于是自己创建了个测试数据表&#xff0c;用来给demo测试 -- 二维码操作入口设置 create table JM_QR_CODE(QR_CODE_ID NUMBER generated as identity primary key,SYSTEM_ID NUMBER(20) not null,IS_ENAB…

安装torchtext遇到的坑及解决办法

刚开始秉着需要什么就pip install什么的原则直接pip install torchtext&#xff0c;结果&#xff1a; 把我这个环境打乱了&#xff0c;自作主张的删掉之前的很多包重新安装了其他版本的包而不是自适应的安装当前torch所对应的torchtext。因为这个环境比较重要也用在其他的工程…

【前端设计模式】之责任链模式

引言 在前端开发中&#xff0c;我们经常需要处理复杂的请求流程&#xff0c;例如事件处理、数据验证等。这时候&#xff0c;职责链模式就能派上用场了。职责链模式允许我们将请求发送者和接收者解耦&#xff0c;并将请求沿着一个链条依次传递下去&#xff0c;直到有一个接收者…

(C++)引用的用法总结

引用&#xff08;reference&#xff09;是C极为重要的一部分&#xff0c;本文对其用法进行简单总结。 1. 引用的基本用法 引用的关键字为&&#xff0c;表示取地址的意思&#xff0c;引用变量定义如下&#xff1a; int m 1; int &n m; //定义 cout<<"n:…

【FreeRTOS】【STM32】01从零开始的freertos之旅 浏览源码下的文件夹

基于野火以及正点原子 在打开正点原子的资料pdf时&#xff0c;我遇到了pdf无法复制粘贴的问题&#xff0c;这里有个pdf解锁文字复制功能的网址&#xff0c;mark一下。超级pdf 参考资料《STM32F429FreeRTOS开发手册_V1.2》 官方资料 FreeRTOS 的源码和相应的官方书籍均可从官…

机器人中的数值优化(二十一)—— 伴随灵敏度分析、线性方程组求解器的分类和特点、优化软件

本系列文章主要是我在学习《数值优化》过程中的一些笔记和相关思考&#xff0c;主要的学习资料是深蓝学院的课程《机器人中的数值优化》和高立编著的《数值最优化方法》等&#xff0c;本系列文章篇数较多&#xff0c;不定期更新&#xff0c;上半部分介绍无约束优化&#xff0c;…

模型训练环境相关(CUDA、PyTorch)

模型训练环境相关&#xff08;CUDA、PyTorch&#xff09; 1. 查看当前 GPU 所能支持的最高版本的 CUDA2. 如何判断是否安装了 CUDA3. 安装 PyTorch3.1 创建虚拟环境3.2 激活并进入虚拟环境3.3 安装 PyTorch 1. 查看当前 GPU 所能支持的最高版本的 CUDA 打开 NVIDIA 控制面板&a…