首页 > Python资料 博客日记
华为OD机试C卷-- 执行任务赚积分(Java & JS & Python & C)
2024-06-05 16:00:05Python资料围观145次
这篇文章介绍了华为OD机试C卷-- 执行任务赚积分(Java & JS & Python & C),分享给大家做个参考,收藏Python资料网收获更多编程知识
获取题库不需要订阅专栏,可直接私信我进入CSDN领军人物top1博主的华为OD交流圈观看完整题库、最新面试实况、考试报告等内容以及大佬一对一答疑。
题目描述
现有N个任务需要处理,同一时间只能处理一个任务,处理每个任务所需要的时间固定为1。
每个任务都有最晚处理时间限制和积分值,在最晚处理时间点之前处理完成任务才可获得对应的积分奖励。
可用于处理任务的时间有限,请问在有限的时间内,可获得的最多积分。
输入描述
第一行为一个数 N,表示有 N 个任务
- 1 ≤ N ≤ 100
第二行为一个数 T,表示可用于处理任务的时间 - 1 ≤ T ≤ 100
接下来 N 行,每行两个空格分隔的整数(SLA 和 V),SLA 表示任务的最晚处理时间,V 表示任务对应的积分。 - 1 ≤ SLA ≤ 100
- 0 ≤ V ≤ 100000
输出描述
可获得的最多积分
题目解析
本题是一个典型的贪心算法问题。为了获得最多的积分,我们应该优先处理积分值高且最晚处理时间早的任务。这是因为,如果我们在一个任务的最晚处理时间之前没有完成它,那么这个任务所带来的积分将丢失。为了最大化总积分,我们需要优先考虑积分多且时间限制紧迫的任务。
贪心策略:
1.根据任务的积分和最晚处理时间,我们可以定义一个优先级:积分越高、最晚处理时间越早的任务优先级越高。
2.我们可以使用一个最大堆(在Java中通常是PriorityQueue,Pyt
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
上一篇:python——查询高校名
下一篇:python内置函数——sorted
相关文章
最新发布
- 【Python系列】SQLAlchemy 基本介绍
- 【Python】selenium 的EC.presence_of_element_located 和 EC.element_to_be_clickable 的区别
- 从零到一!超详细Pycharm安装教程(图解+详细步骤)
- python json jsonl 的用法
- 【Python篇】深度探索NumPy(下篇):从科学计算到机器学习的高效实战技巧
- boto3:Python连接S3对象存储并进行文件操作(上传、下载、删除)
- 全网最适合入门的面向对象编程教程:50 Python函数方法与接口-接口和抽象基类
- Python pycryptodome类库使用学习总结
- import torch 报错:WinError 126
- 如何在Java中实现邮件发送功能?
点击排行
- 版本匹配指南:Numpy版本和Python版本的对应关系
- Python 可视化 web 神器:streamlit、Gradio、dash、nicegui;低代码 Python Web 框架:PyWebIO
- 版本匹配指南:PyTorch版本、torchvision 版本和Python版本的对应关系
- 相关性分析——Pearson相关系数+热力图(附data和Python完整代码)
- Could not build wheels for llama-cpp-python, which is required to install pyproject.toml-based proj
- Python pyinstaller打包exe最完整教程
- Anaconda版本和Python版本对应关系(持续更新...)
- Python与PyTorch的版本对应