Skip to content

Commit

Permalink
Update Readme.md
Browse files Browse the repository at this point in the history
  • Loading branch information
wisdompeak authored Apr 15, 2021
1 parent 9ad68eb commit 7fc9667
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion LCCUP/2020Fall/LCP32.批量处理任务/Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

对于任务池中的tasks,我们将其按照最晚开工时间保持有序。最晚开工时间的意思是,你必须在这个时刻开工并且直到全部完成其工作量,否则就来不及了。

我们令runtime表示当前(已经将部分tasks放入任务池)我们确定必须开工的时长。我们现在需要考虑一个新任务A,准备加入任务池。而此刻任务池中某任务B对应着最早的“最晚开工时间”。此时,如果B的最晚开工时间晚于A的最早开工时间,那么意味着当前没有任何due time,我们不着急开工,可以再拖一拖,可以将A先放入任务池再说。而如果B的最晚开工时间早于A的最早开工时间,意味着B等不及了,我们在将A放入任务池之前必须开工了,那么至少开工多长时间呢?三种情况:
我们令runtime表示当前(已经将部分tasks放入任务池)我们已经(不得不)开工的时长。我们现在需要考虑一个新任务A,准备加入任务池。而此刻任务池中某任务B对应着最早的“最晚开工时间”。此时,如果B的最晚开工时间晚于A的最早开工时间,那么意味着当前没有任何due time,我们不着急开工,可以再拖一拖,可以将A先放入任务池再说。而如果B的最晚开工时间早于A的最早开工时间,意味着B等不及了,我们在将A放入任务池之前必须开工了,那么至少开工多长时间呢?三种情况:
1. 当前的runtime已经比B的时长多。那么说明任务B已经不需要再考虑了,那么将B从任务池中拿走。
2. 在A的最早开工时间之前就可以把B做完,那么需要再跑:B的时长减去已经开工的runtime。
3. 在A的最早开工时间之前并不能把B做完,那么需要再跑:A的最早开工时间减去B的最晚开工时间,也就是将时间线拉到A的最早开工时间。
Expand Down

0 comments on commit 7fc9667

Please sign in to comment.