【华为OD机试真题】单核CPU任务调度

2023-11-01

单核CPU任务调度
考察的知识的点就一个优先队列(队列排序)
题目描述:
现在有一个CPU和一些任务需要处理,已提前获知每个任务的任务D、优先级、所需执行时间和到达时间。
CPU同时只能运行一个任务,请编写一个任务调度程序,采用“可抢占优先权调度”调度算法进行任务调度,规则如
下:
如果一个任务到来时,CPU是空闲的,则CPU可以运行该任务直到任务执行完毕。但是如果运行中有一个更高优先级
的任务到来,则CPU必须暂停当前任务去运行这个优先级更高的任务;
如果一个任务到来时,CPU正在运行一个比它优先级更高的任务时,新到达的任务必须等待:
当CPU空闲时,如果还有任务在等待,CPU会从这些任务中选择一个优先级最高的任务执行,相同优先级的任务选择
到达时间最早的任务。

输入描述:
输入有若干行,每一行有四个数字(均小于108),分别为任务引D,任务优先级,执行时间和到达时间。每个任务的任务引D不同,
优先级数字越大优先级越高,井且相同优先级的任务不会同时到达。
输入的任务已按照到达时间从小到达排列,并且保证在任何时间,处于等待的任务不超过10000个。
输出描述:
按照任务执行结束的顺序,输出每个任务的任务引D和对应的结束时间。
示例1
输入:
1 3 5 1
2 1 5 10
3 2 7 12
4 3 2 20
5 4 9 21
6 4 2 22
输出:
1 6
3 19
5 30
6 32
4 33
2 35
以下示例是自己创建的
示例2
输入:
1 3 5 1
2 2 5 2
输出:
1 6
2 11
示例3
输入:
1 3 5 1
2 2 5 2
3 4 6 3

输出:
3 9
1 12
2 17
示例4
输入:
1 3 5 1
2 3 5 2
输出:
1 6
2 11

public class 单核cpu任务调度 {
   
    public static void main(String[] args) {
   
        Scanner in = new Scanner(System.in);
        List<Task> tasks = new ArrayList<>();
        while (true) {
   
            String value = in.nextLine
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【华为OD机试真题】单核CPU任务调度 的相关文章

随机推荐

  • SMP,NUMA,MPP

    一 概念介绍 SMP Symmetric Multi Processor 对称多处理器 NUMA Non Uniform Memory Access 非一致存储访问结构 MPP Massive Parallel Processing 海量并
  • exynos5410 TMU系统的critical情况处理方法

    根据TMU 将CPU的温升分为四种情况来处理 分别是下述情况 THERMAL TRIP HOT THERMAL TRIP ACTIVE THERMAL TRIP PASSIVE THERMAL TRIP CRITICAL THERMAL T
  • PhotoShop 快捷键及技巧

    复制图层 图层 新建 复制图层 图层上右键 点击复制图层 ctrl J 删除图层 选中图层 按del键删除图层 对图像实现自由变换 ctrl T 同过图像边框八个方块对图像实现大小变化 按回车键确认变换 按住shift键实现等比例变换 勾选
  • Python程序报错:TypeError: read() missing 1 required positional argument: ‘self‘

    文章目录 问题描述 问题定位 解决方法 总结 问题描述 最近在学习python面向对象执行调用方法时程序报错 TypeError read missing 1 required positional argument self 一看这个报错
  • 阿里Esay-excel解析复杂表头方案实际应用

    目录 我遇到的场景 思路 一 观察表格整体结构 二 设计数据结构 三 引入依赖 四 建立实体 五 实现自定义解析逻辑 六 业务调用 七 其他代码段 可以参考的链接 我遇到的场景 业务上需要读取表格中的所有数据 接着入库保存 思路 一 观察表
  • 获取地址栏url参数

    获取url携带参数 getUrlParams url var arr url split var params arr 1 split var obj for var i 0 i lt params length i var param p
  • 8. unity脚本参数输入、键盘控制、组件脚本调用

    1 脚本参数 在脚本文件中可以定义一些公开的属性 这时对应的属性也会在编辑器中显示出来 可以在编辑器中直接改动属性的值 如下代码 将 rotateSpeed 属性使用 public 修饰后 using System Collections
  • ChatGPT引发的人机交互发展历程与升级思考

    ChatGPT自从去年12月火爆以来一直热度不减 最近正好研读了科技之巅 书中详细阐述了人机交互 人工智能 算力算法等技术的发展历史 本文主要围绕ChatGPT引发的人机交互方面的思考 在讨论人机交互之前 首先需要说明的一点 目前计算机发展
  • AndroidStudio启动模拟器 Emulator: emulator: ERROR: x86 emulation currently requires hardware acceleration

    配置完Androidstudio 第一次启动模拟器 启动不了报错 错误 Emulator emulator ERROR x86 emulation currently requires hardware acceleration 错误原因
  • Windows Vista介绍概要

    正文 Windows Vista介绍概要 关键日程表 Beta 1 2005年7月27日 1 CTP 由2005年12月20日 Build 5270 開始 每兩至三個月推出新版本 Beta 2 2006年5月23日 Build 5384 4
  • Java 通过JDBC连接Mysql数据库的方法和实例

    之前有两篇文章讲了安装mysql ubuntu和windows 和可视化工具workbench的使用 这篇文章就讲一下java程序是如何连接MySQL数据库的 Java是通过JDBC连接Mysql数据库的 JDBC Java Data Ba
  • Linux运维常见面试题之精华收录

    1 什么是运维 什么是游戏运维 1 运维是指大型组织已经建立好的网络软硬件的维护 就是要保证业务的上线与运作的正常 在他运转的过程中 对他进行维护 他集合了网络 系统 数据库 开发 安全 监控于一身的技术 运维又包括很多种 有DBA运维 网
  • webrtc android版本的编译及release版本的获取

    本文主要介绍如何在ubuntu16 0 4平台下编译android版本的webrtc 对于刚开始使用webrtc的人来说 本篇博客可能对你有所帮助 对于健忘的我来说 也算是一种学习笔记 当有需要的时候 回头过来翻看一下也是极好的 好了 进入
  • JDK8辅助学习(四):Stream流 collect() 方法的详细使用介绍

    Stream流 collect 方法的使用介绍 1
  • linux配置jdk,jenkins,python3,git

    一 安装jdk 自动化测试的主要目的是为了执行回归测试 当然 为了模拟真实的用户操作 一般都是在UAT或者生产环境进行回归测试 为了尽量避免内网和外网解析对测试结果的影响 将自动化测试服务部署在外网的服务器是比较好的选择 今天申请的测试服务
  • java中instanceof用法

    java 中的instanceof 运算符是用来在运行时 color red b 指出对象是否是特定类的一个实例 b color instanceof通过返回一个布尔值来指出 这个对象是否是这个特定类或者是它的子类的一个实例 用法 resu
  • 马尔科夫区制转换matlab,马尔科夫区制转移混频向量自回归(MS-MF-VAR)模型及其Gauss实现...

    导读 马尔科夫区制转移向量自回归模型可以进行实时 real time 预测分析 扩展容纳混合频率和锯齿数据 可以看作是MF VAR模型的马尔科夫区制转移 Markov switching 扩展 从经验上讲 该模型能够非常准确地捕捉到美国的经
  • Python3.0 基础系列教程(目录)

    准备写一篇python的系列教程 目录暂定如下 如果有更好的建议 麻烦下方留言 如无意外 大约一周2 3篇 敬请期待 环境安装篇 1 下载并安装Python3 0 2 第一个python程序 3 安装集成开发环境ide 基础知识篇 基本数据
  • go:chan分为阻塞和非阻塞

    一句话总结 ch make chan int 由于没有缓冲发送和接收需要同步 ch make chan int 2 有缓冲不要求发送和接收操作同步 1 无缓冲时 发送阻塞直到数据被接收 接收阻塞直到读到数据 package main imp
  • 【华为OD机试真题】单核CPU任务调度

    单核CPU任务调度 考察的知识的点就一个优先队列 队列排序 题目描述 现在有一个CPU和一些任务需要处理 已提前获知每个任务的任务D 优先级 所需执行时间和到达时间 CPU同时只能运行一个任务 请编写一个任务调度程序 采用 可抢占优先权调度