1017 在银行排队 (25分)(优先队列,新手也能看得懂)
优先队列保存窗口时间,每次选出最小时间处理讲解算法思路代码部分pat运行结果复杂度分析
讲解
设置一个将题干hh:mm:ss时间转化为秒为单位的时间的函数
利用一个优先队列(这里是一个小根堆,每次top为时间最小的元素)保存每个窗口的当前时间
将每个人的个人信息用struct保存,包括到达时间和处理时间
将每个人以到达时间排序(由小到大),先到的先处理
开始模拟银行工作:
1)取出当前时间time_win(就是该窗口上一次处理的结束时间,初始化为8*3600)最小的银行窗口,接受最早到达的人的申请
2)修
原创
2020-07-02 12:12:50 ·
693 阅读 ·
0 评论