题型:单选题
给定有 n 个任务,每个任务有截止时间和利润,每个任务耗时 1 个时间单位、必须在截止时间前完成,且每个时间槽最多做 1 个任务。为了在规定时间内获得最大利润,可以采用贪心策略,即按利润从高到低排序,尽量安排,则横线处应填写( )。
class Task: def __init__(self, deadline, profit): self.deadline = deadline self.profit = profit def sort_by_profit(tasks): tasks.sort(key=lambda x: x.profit, reverse=True) def max_profit(tasks): sort_by_profit(tasks) max_time = 0 for task in tasks: if task.deadline > max_time: max_time = task.deadline slot = [False] * (max_time + 1) total_profit = 0 for task in tasks: t = task.deadline while t >= 1: if not slot[t]: # 填空处完整代码 slot[t] = True total_profit += task.profit break t -= 1 return total_profit
| A. slot [t] = True total_profit += task .profit break |
B. slot [t] = True total_profit += task .profit |
| C. slot[t] = False total_profit += task .profit break |
D. slot [t] = True total_profit -= task .profit |
更新时间:2026-07-17 19:54:37
|
【知识点】
CCF—GESP Python五级
抱歉! 您未登录, 不能查看答案和解析点击登录
相似题推荐
单选题
唯一分解定理描述的内容是()。
| A. 任何正整数都可以表示为两个素数的和。 |
B. 任何大于1的合数都可以唯一分解为有限个质数的乘积。 |
| C. 两个正整数的最大公约数总是等于它们的最小公倍数除以它们的乘积。 |
D. 所有素数都是奇数。 |
2026-07-18
判断题
以下 fib 函数计算第 n 项斐波那契数( fib(0)=0 , fib(1)=1 ),其时间复杂度为 O(n)。()
def fib(n) : if n <= 1 : return n return fib(n - 1) + fib(n - 2)
| A.正确 | B.错误 |
2026-07-18
