某家高科技公司为方便员工省去每日上下班的打卡操作,计划推广使用智慧打卡系统。其运行的原理是系统会记录员工当日进出门禁的时间(员工在上班期间可能会多次进出门禁,格式为24小时制,小时:分钟,"HH:MM”)。
现在请编写一个算法,计算员工当日的工作时长 (单位: 分钟),具体要求如下: 1、单次离岗15min以内,不从工作时长中扣除. 2、12:00至14:00为午休时间,不算工作时长.
某高科技公司为员工提供智慧打卡系统,记录员工每日的进出门禁时间。为计算员工的实际工作时长,考虑以下规则:离岗时间不超过 15 分钟的,不扣除工作时长;午休时间为 12:00 至 14:00,此时间段内不算工作时长;晚饭时间为 18:00 至 19:30,此时间段内也不算工作时长。
输入包括四行:第一行是员工当天进门禁的次数 ( n );第二行是员工当天所有的入门禁时间,以空格分隔(格式为 HH:MM);第三行是员工当天出门禁的次数 ( m );第四行是员工当天所有的出门禁时间,以空格分隔(格式为 HH:MM)。输出为员工当天的工作时长(单位:分钟)。
若离岗时间不超过15min,那么直接可以将出门禁时间改为下次入门禁时间。对于午休时间和晚饭时间,可以将入门禁时间改为午休和晚饭的结束,出门禁时间改为午休和晚饭的开始。处理后可能会存在单次打卡出门禁时间在入门禁时间之前,直接将本次工作时间置零即可。然后计算单次工作时间。