华为OD机试 - 芯片资源限制(Java 2024 C卷 100分)

在这里插入图片描述

华为OD机试 2024C卷题库疯狂收录中,刷题点这里

专栏导读

本专栏收录于《华为OD机试(JAVA)真题(A卷+B卷+C卷)》。

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

一、题目描述

一个业务芯片的容量为10G,可支持两种不同的业务类型A、B。芯片的约束如下:

1.A业务容量为2.5G,一个芯片上最多可配置4路业务;
2.B业务容量为10G,一个芯片上最多可配置1路业务;
3.由于业务容量限制,配置了A业务后,该芯片就不能配置B业务;
4.不能跨芯片占用资源,即业务只能配置在一块芯片上,不能占用一块芯片的容量,再占用另外芯片容量;
5.为了保证使用最少的芯片资源,业务配置时,按芯片编号从小到大顺序依次配置,并优先使用已经占用的芯片。
由于业务容量最小为2.5G,以最小业务容量为单位,一个芯片可以划分为4个资源区,将资源区依次编号为1,2,3,4。

一块板卡上有M块芯片,用户进行一系列业务配置后,请输出最后一个业务对应的芯片编号和芯片资源D,如果没有可用资源返回0 0

二、输入描述

板卡芯片数量M,芯片范围为1-32
用户业务配置数量N,数量为1-128
用户业务配置,业务配置间以空格分割

三、输出描述

芯片编号 资源区编号

四、Java算法源码

public class Test03 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);// 板卡芯片数量int M = Integer.valueOf(sc.nextLine());// 用户业务配置数量int N = Integer.valueOf(sc.nextLine());// 用户业务配置String[] arr = sc.nextLine().split(" ");int a = 0; // 记录芯片被业务A的使用个数,即芯片资源IDint idx1 = 1; // 未满状态的第一块芯片编号int idx2 = 1; // 全空状态的第一块芯片编号for (int i = 0; i < N - 1; i++) {  // 前N-1个业务的分配// A业务容量为2.5G,一个芯片上最多可配置4路业务if (arr[i].charAt(0) == 'A') {if (a + 1 == 4) {a = 0;idx1 = idx2;} else {a++;if (idx1 == idx2) {idx2++;}}} else if (arr[i].charAt(0) == 'B') {// B业务容量为10G,一个芯片上最多可配置1路业务if (idx1 == idx2) {idx1++;idx2++;} else {idx2++;}}}// 判断最后一个if (arr[N - 1].charAt(0) == 'A') {if (idx1 > M) {System.out.println(0);System.out.println(0);} else {System.out.println(idx1);System.out.println(a + 1);}} else {if (idx2 > M) {System.out.println(0);System.out.println(0);} else {System.out.println(idx2);System.out.println(1);}}}
}

五、效果展示

1、输入

5
6
A B A B A A

2、输出

1
4

3、说明

A:第一块芯片配置A,占用芯片编号:1,资源ID:1,芯片容量未使用完
B:第二块芯片配置B,占用芯片编号:2,资源ID:1,芯片容量已经使用完
A:由于第一块芯片还能配置,故占用芯片编号:1,资源ID:2
B:第一块芯片虽然没有占满,但是A业务和B业务相斥,只能新占用,故占用芯片编号:3,资源ID:1
A:由于第一块芯片还能配置,故占用芯片编号:1,资源ID:3
A:由于第一块芯片还能配置,故占用芯片编号:1,资源ID:4

在这里插入图片描述


🏆下一篇:华为OD机试 - 简易内存池 - 逻辑分析(Java 2024 C卷 200分)

🏆本文收录于,华为OD机试(JAVA)真题(A卷+B卷+C卷)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

在这里插入图片描述

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

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

相关文章

车载以太网AVB交换机 gptp透明时钟 5口 全千兆 SW1500

全千兆车载以太网交换机 一、产品简要分析 5端口千兆车载以太网交换机&#xff0c;包含4个通道的1000BASE-T1接口使用罗森博格H-MTD和泰科MATEnet双接口&#xff0c;1个通道1000BASE-T标准以太网(RJ45接口)&#xff0c;可以实现车载以太网多通道交换&#xff0c;千兆和百兆车载…

XR虚拟直播间,引领创新风潮,打破直播局限!

随着互联网技术日新月异的发展&#xff0c;直播行业也迎来了蓬勃发展的春天。然而&#xff0c;大多数直播间在吸引观众眼球和延长用户观看时长方面&#xff0c;仍然面临着巨大的挑战。正是在这样的背景下&#xff0c;XR虚拟直播系统应运而生&#xff0c;以其多维度的直播场景、…

ComfyUI SDWebUI升级pytorch随记

目前使用的版本是去年10月的1.6版本&#xff0c;有点老。希望支持新的特性&#xff0c;于是乎开始作死。从升级torch开始。先看看已有的版本&#xff1a; (venv) rootubuntu-sd-server:~# pip show torch Name: torch Version: 2.0.1 Summary: Tensors and Dynamic neural net…

矩阵置零 - LeetCode 热题 18

大家好&#xff01;我是曾续缘&#x1f929; 今天是《LeetCode 热题 100》系列 发车第 18 天 矩阵第 1 题 ❤️点赞 &#x1f44d; 收藏 ⭐再看&#xff0c;养成习惯 矩阵置零 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为…

动态规划——回文串问题

目录 练习1&#xff1a;回文子串 练习2&#xff1a;最长回文子串 练习3&#xff1a;回文串分割IV 练习4&#xff1a;分割回文串 练习5&#xff1a;最长回文子序列 练习6&#xff1a;让字符串成为回文串的最小插入次数 本篇文章主要学习使用动态规划来解决回文串相关问题&…

视频智能分析系统TSINGSEE青犀AI算法中台介绍及应用场景

TSINGSEE青犀AI算法中台是一款平台型产品&#xff0c;专注于提供各行业中小场景中部署解决方案。平台具备接入广、性能强、支持跨平台、芯片国产化等特点&#xff0c;可提供丰富的视图接入能力和智能分析能力。平台支持将不同类型、不同协议前端设备&#xff0c;通过不同网络环…

接口自动化之 + Jenkins + Allure报告生成 + 企微消息通知推送

接口自动化之 Jenkins Allure报告生成 企微消息通知推送 在jenkins上部署好项目&#xff0c;构建成功后&#xff0c;希望可以把生成的报告&#xff0c;以及结果统计发送至企微。 效果图&#xff1a; 实现如下。 1、生成allure报告 a. 首先在Jenkins插件管理中&#x…

鸿蒙之路由跳转router

router的使用都是基于Entry修饰的组件。 都是基于resources/base/profile/main-page.json中的路由配置来跳转的 router提供下列的几个方法 1.pushUrl -压栈一层盖一层(在鸿蒙中页面栈支持最大数值是32) 2.replaceUrl会替换当前页面&#xff0c;不管是不是同一个页面&#xf…

PS之更换背景色

1.更换背景色 导入图片后, 选中快速选择工具, 依次点击 选择主体 -> 选择并遮住 其后右边会出现一栏 “属性”, 拉到最下面的 “输出设置”, 选择净化颜色, 然后确认 此时应该得到抠出来的物体. 右下角点击新建图层 此时对图层2打开拾色器, 将图层2 设为白色 然后CTRL…

Python3:ModuleNotFoundError: No module named ‘click‘

问题背景 问题 ModuleNotFoundError: No module named click 解决方法 pip3 install click

使用 CSS 实现多立方体悬停颜色效果实现

使用 CSS 实现多立方体悬停效果实现 效果展示 CSS 知识点 filter 属性的 hue-rotate 值运用使用 CSS 实现立方体 场景布局分析 从效果图可以看出&#xff0c;要实现 3*3 的立方体集合&#xff0c;我们需要考虑一下怎么安排小立方体的布局。我这里的做法是使用span实现单个小…

二维码门楼牌管理应用平台建设:引领现代化小区管理新篇章

文章目录 前言一、二维码门楼牌管理应用平台概述二、三维动态单体化技术的优势三、二维码门楼牌管理应用平台的应用场景四、展望未来 前言 随着城市化的快速推进&#xff0c;现代化小区如雨后春笋般涌现&#xff0c;对小区管理的效率和智能化提出了更高要求。二维码门楼牌管理…

数字化服务升级:数字乡村改善农民生活质量

随着信息技术的迅猛发展&#xff0c;数字化浪潮已经深入社会的各个角落&#xff0c;为人们的生活带来了翻天覆地的变化。在乡村地区&#xff0c;数字化服务的升级正在逐步改变农民的生活方式&#xff0c;提高他们的生活质量。本文将围绕数字化服务升级&#xff0c;探讨数字乡村…

Spring IoC和DI

目录 IoC是什么&#xff1f; 理解IoC 示例 为什么要使用IOC DI是什么&#xff1f; IoC Controller&#xff08;控制器存储&#xff09; Controller的使用 ApplicationContext Service&#xff08;服务存储&#xff09; 类注解总结 Bean 方法注解的使用 定义多个…

A Simple Problem with Integers(线段树)

目录 描述 输入 输出 样例输入 样例输出 思路 建树 第一次错误解法&#xff08;正确解法在下面&#xff0c;可跳过这一步&#xff09; 正确解法 code 描述 You have N integers, A1, A2, ... , AN. You need to deal with two kinds of operations. One type of …

Qt for WebAssembly 环境搭建 - Windows新手入门

Qt for WebAssembly 环境搭建 - Windows新手入门 一、所需工具软件1、安装Python2、安装Git2.1 注册Github账号2.2 下载安装Git2.2.1配置Git&#xff1a;2.2.2 配置Git环境2.2.3解决gitgithub.com: Permission denied (publickey) 3 安装em编译器 二、Qt配置编译器三、参考链接…

git基本操作二(小白快速上手)

1、前言 接上篇我们接着来继续讲 2、.gitignore忽略文件 创建一个.gitignore文件&#xff0c;并将其置于项目的根目录下&#xff0c;Git将自动识别并根据该规则忽略相应的文件和目录。 # 忽略所有的 .log 文件 *.log# 但跟踪所有的 build.log 文件 !build.log# 忽略所有的 /lo…

elementUI this.$msgbox msgBox自定义 样式自定义 富文本

看这个效果是不是很炫?突出重点提示内容,对于用户交互相当的棒! 下来说说具体实现: let self = this const h = self.$createElement; this.$msgbox({title: null,message: h("p", {style: "margin-top:10px"}, [h("i", {class: "el-i…

C# wpf 嵌入wpf控件

WPF Hwnd窗口互操作系列 第一章 嵌入Hwnd窗口 第二章 嵌入WinForm控件 第三章 嵌入WPF控件&#xff08;本章&#xff09; 第四章 底部嵌入HwndHost 文章目录 WPF Hwnd窗口互操作系列前言一、如何实现&#xff1f;1、继承HwndHost2、添加Content属性3、创建wpf窗口并设置Conten…

IDEA的使用(概念,安装,配置,)以及什么是字符集,模版

目录 Intellij IDEA IDE的概念 IntelliJ IDEA的安装 IntelliJ IDEA的使用 基本配置 JDK配置 创建Module 基本用法 字体配置 主题配置 字符集 设置IDEA默认字符集 注释模板 字符集 字符集简介 常见字符集 Intellij IDEA 我们不可能一直使用记事本之类变成&#…