模拟题。感觉跟某次 CSP 的第四题有点像,是它的简化版。
维护 n 个队列,长度均 <= m,每个队列记录其下一个客户可以开始的时间(或者称为当前正在处理的客户的完成时间)。每次遍历所有队列,找出完成时间最早的那个,更新相应的客户的完成时间,并将其移除出该队列。同时,若还有客户在黄线以外,则将其加入该队列(这样就能保证 <= m 了)。反复执行,直到遍历所有队列后发现,所有队列的最早完成时间都在 17:00 之后了,这时,坑来了。即使银行 17:00 关门,但仍要等待 17:00 前就开始的客户的业务完成。所以,需要遍历一遍所有队列,将所有维护 n 个队列