怎么使用Python来计算公交发车时间
发布时间:2022-07-18 12:53:50 所属栏目:云计算 来源:互联网
导读:问题描述: 公交车每天会按照一定间隔发车,由于不同时间段经过拥堵路段的用时不-样,所以给定路线下公交车每趟(每车次)行驶时间差异也很大,现在给出某路线某天各车次公交车离开始发站和到达终点站的时间,请求出该天耗时最长车次的行驶时间。 输出说明: 耗
问题描述: 公交车每天会按照一定间隔发车,由于不同时间段经过拥堵路段的用时不-样,所以给定路线下公交车每趟(每车次)行驶时间差异也很大,现在给出某路线某天各车次公交车离开始发站和到达终点站的时间,请求出该天耗时最长车次的行驶时间。 输出说明: 耗时最长的车次的行驶时间,比如耗时最长车辆的始发时间是0830到1025,那么输出1H55M。 解决方案: 通过题目我们可以发现题目的本意是求两点之间的时间,所以首先应该思考如何在题目给的格式下计算时间差,我们可以将时间分成两部分分开计算,利用取整和取余算出时间传入一个新列表然后找出最大最小输出 进行格式的处理方便计算 N = int(input()) list2 = [] while N>0: list1 = list(map(str,input().split())) 计算时间 a = (abs(int(list1[1])//100-int(list1[2])//100))*60 b = int(list1[2])%100-int(list1[1])%100 求出最大最小并输出 c = max(list2) d = min(list2) print('%dH%dM' % (c//60,c-(c//60)*60)) 完整代码如下 list1 = list(map(str,input().split())) a = (abs(int(list1[1])//100-int(list1[2])//100))*60 b = int(list1[2])%100-int(list1[1])%100 list2.append(a+b) N-=1 c = max(list2) d = min(list2) print('%dH%dM' % (c//60,c-(c//60)*60)) 最后,遇到这种题我们应该冷静思考,抓住题的本意,寻找规律,总能解决问题。 (编辑:开发网_开封站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |