gpt4 book ai didi

将尽可能多的事件纳入时间表的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:42:29 25 4
gpt4 key购买 nike

我正在尝试找到一种算法,可以将尽可能多的这些非重叠事件安排到一个时间表中(可以根据需要在时间表中添加或删除这些事件中的任何一个)。这些事件都不能重叠,但我想将尽可能多的事件安排在每天的日程表中:

12:00 PM - 12:45 PM: Lunch

1:00 AM - 3:00 AM: Math class 1

3:30 PM - 5:00 PM: Math class 2

7:00 PM - 10:00 PM: History class 1

9:00 PM - 11:00 PM: History class 2

Any time of day: Grocery shopping, 40 minutes

Any time of day: Study math for 30 minutes

Any time of day between 11:00 AM and 4:00 PM: Basketball practice for 2 hours

这个问题我想了很久,还是不知道应该怎么解决。在这种情况下,哪种类型的日历调度算法最有效?

最佳答案

您将时间段打包成一天的长度。您想为您的问题找到可能的解决方案,并根据您设法打包到其中的周期数对它们进行评分。

  1. 以 15 分钟为间隔划分一天,这样从凌晨 1 点到晚上 10 点,您就有 21 * 4 帧。
  2. 根据您的约束生成所有可能的排列(帧无重叠)。
  3. 对于每个有效排列,计算您设法适合的周期数。
  4. 打印得分最高的 [x] 个排列

关于将尽可能多的事件纳入时间表的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16642185/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com