问题描述如下:
特定日期 d 有 n 个事件,具有开始时间和持续时间。例子:
e1 10:15:06 11ms (ms = milli seconds)
e2 10:16:07 12ms
......
我需要找出时间x和n。其中 x 是执行最大事件的时间。
我在想的解决方案是: 在第 d 天扫描所有毫秒。但是该请求总共计算了 86400000*n。例子
Check at 00::00::00::001 How many events are running
Check at 00::00::00::002 How many events are running
Take max of Range(00::00::00::01,00::00::00::00)
我想的第二个解决方案是:
For eventi in all events
Set running_event=1
eventj in all events Where eventj!=eventi
if eventj.start_time in Range (eventi.start_time,eventi.execution_time)
running_event++
然后取最大的 running_event
有没有更好的解决方案?