Leetcode 2895. Minimum Processing Time

  • [Leetcode 2895. Minimum Processing Time](#Leetcode 2895. Minimum Processing Time)
    • [1. 解题思路](#1. 解题思路)
    • [2. 代码实现](#2. 代码实现)

1. 解题思路

这一题整体上来说其实没啥难度,就是一个greedy算法,只需要想明白耗时长的任务一定要优先执行,不存在某个耗时长的任务后执行可以更快的完成的情况。

因此,我们只需要将耗时倒序排列之后顺序分配给各个闲置的CPU即可。

2. 代码实现

给出python代码实现如下:

python 复制代码
class Solution:
    def minProcessingTime(self, processorTime: List[int], tasks: List[int]) -> int:
        processorTime = sorted(processorTime)
        tasks = sorted(tasks, reverse=True)
        n = len(processorTime)
        ans = max(processorTime[i] + tasks[4*i] for i in range(n))
        return ans

提交代码评测得到:耗时591ms,占用内存32.8MB。

相关推荐
亓才孓1 小时前
[leetcode]树的操作
算法·leetcode·职场和发展
loser~曹2 小时前
基于快速排序解决 leetcode hot215 查找数组中第k大的数字
数据结构·算法·leetcode
Dream it possible!2 小时前
LeetCode 热题 100_打家劫舍(83_198_中等_C++)(动态规划)
c++·算法·leetcode·动态规划
SylviaW082 小时前
python-leetcode 62.搜索插入位置
数据结构·算法·leetcode
Joe_Wang54 小时前
[图论]拓扑排序
数据结构·c++·算法·leetcode·图论·拓扑排序
梭七y5 小时前
【力扣hot100题】(033)合并K个升序链表
算法·leetcode·链表
月亮被咬碎成星星5 小时前
LeetCode[383]赎金信
算法·leetcode
trust Tomorrow7 小时前
每日一题-力扣-2278. 字母在字符串中的百分比 0331
算法·leetcode
梭七y12 小时前
【力扣hot100题】(022)反转链表
算法·leetcode·链表
LuckyLay18 小时前
LeetCode算法题(Go语言实现)_22
算法·leetcode·golang