从会员的可用时间的google文档生成时间表

|| 我有一个google doc电子表格,其中包含有关某个小组的每个成员的信息,这些成员在一周的特定时间开会。在一周中需要举行多次会议,而小组中的不同成员则需要参加某些会议。我需要一种基于此生成时间表的方法,以便大多数成员可以参加每次会议。没有一个会议可以在同一时间段内举行。 该表为每次举行的会议包含一行。每列代表会议可以召开的时间段(例如,星期一6:30 pm-8:00pm)。与某个会议和某个时隙相对应的单元格包含一个数字,该数字表示可以参加每个会议的人数。如果该单元格包含与注册会议的成员数量相同的数字,则该单元格会被Google文档自动突出显示。 我正在尝试通过使用google docs的脚本功能来解决此问题,但是我在弄清楚该算法时遇到了麻烦。我真正需要的只是一些伪代码,我可以编写它。 假设在我的脚本中,我有一个二维的单元格数组,以及一个与单元格是否突出显示相对应的二维布尔数组(这意味着最大的成员可以出席) 这是表格的示例:
|Meeting    |Mon 6:30-8:30pm |Mon 8:30-10:30pm |Tue 6:30-8:30pm |Tue 8:30-10:30pm |
|-----------|----------------|-----------------|----------------|-----------------|
|Meeting 1  |7               |9                |8               |6                |
|Meeting 2  |3               |5                |1               |4                |
|Meeting 3  |10              |15               |12              |8                |
|-----------|----------------|-----------------|----------------|-----------------|
谢谢您的帮助!     
已邀请:
假设我理解您的意思,那么您首先必须选择安排会议的顺序。考虑到其他所有条件都是平等的,我能想到的最好方法就是从简单地选择最多人参加的会议开始:
firstScheduled = max(max(meeting1), max(meeting2), max(meeting3));
之后,查看其余的会议,看看在当前非计划的日期中哪个会议的出席人数最多:
foreach meeting as m
    foreach day as d
        if d is currently scheduled
            m = 0  // set all attendees to 0; no one can come, since the\'ll be
                   // at the other meeting
        end if
    end for

    highestAttendanceDate = max(meeting1)
end for
然后重复进行,直到安排完所有会议为止。     

要回复问题请先登录注册