首页 > Python资料 博客日记

华为OD机试D卷 --可以处理的最大任务数--24年OD统一考试(Java & JS & Python & C & C++)

2024-07-13 10:00:07Python资料围观193

这篇文章介绍了华为OD机试D卷 --可以处理的最大任务数--24年OD统一考试(Java & JS & Python & C & C++),分享给大家做个参考,收藏Python资料网收获更多编程知识

题目描述

在某个项目中有多个任务(用task数组表示)需要你进行处理,其中:

task[i] = [si, ei]
你可以在 si ≤ day ≤ ei 中的任意一天处理该任务,请返回你可以处理的最大任务数。

输入描述

第一行为任务数量 n

1 ≤ n ≤ 100000
后面 n 行表示各个任务的开始时间和终止时间,使用 si,ei 表示

1 ≤ si ≤ ei ≤ 100000

输出描述

输出为一个整数,表示可以处理的最大任务数。

用例1

输入

3
1 1
1 2
1 3

输出

3

题目解析

这个问题是一个典型的贪心算法问题,类似于“活动选择”问题。在这个问题中,你有一系列的活动(任务),每个活动都有一个开始时间和一个结束时间。目标是选择最多的活动(任务),使得这些活动在时间上不会重叠。

一种常见的解决方法是首先将所有活动按照结束时间进行排序,然后遍历排序后的活动列表,每次选择结束时间最早的活动,因为这样可以为之后的活动留下更多的选择空间。

java源码



版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!

标签:

相关文章

本站推荐