有多个小时分钟格式的时间段,例如06:00 - 12:00、13:30 - 19:00、19:00 - 22:30、、全天的时间以半小时划分,也就是半个小时一档,要求判断输入的一个或多个时间段的合集是否涵盖了全天所有的时间,不是单纯的时间段时间相加够24小时。
2条回答 默认 最新
规则边缘 2021-03-22 17:55关注1. 定义一个长度为48的布尔数组,记录48个区间的涵盖状态,初始值默认全为false。
2. 定义一个涵盖状态更新方法,传入一个数组,一个起始下标,一个结束下标。方法体为:将数组从起始下标到结束下标(不包含自身,起始和结束相等时不进行操作)间的元素值设为true。
3. 循环读取时间段,将时间段转换为数组下标。调用状态更新方法更新涵盖状态数组。
4. 遍历涵盖状态数组,全为true则表示涵盖了一整天的所有时间,否则有缺失。
PS:整体思路参考位图BitMap。
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 2无用