Python计算公交发车时间的完整代码


Posted in Python onFebruary 12, 2020

问题描述

公交车每天会按照一定间隔发车 , 由于不同时间段经过拥堵路段的用时不 - 样,所以给定路线下公交车每趟 ( 每车次 ) 行驶时间差异也很大,现在给出某路线某天各车次公交车离开始发站和到达终点站的时间,请求出该天耗时最长车次的行驶时间。输入说明 : 第 - - 行是一个整数 N, 示接下来的公交车车次的总数。之后是 N 行,每行开始是字母 S 或 Z, 表示是从始发站开出还是终点站开出。之后两个时间表示起始时间,时间给出方式为小时 + 分钟的形式,如 S 0830 1210 表示 8 点 30 分离开始发站, 12 点 10 分达到终点站。

输出说明 : 耗时最长的车次的行驶时间,比如耗时最长车辆的始发时间是 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))

完整代码如下

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
   list2.append(a+b)
   N-=1
 c = max(list2)
 d = min(list2)
 print('%dH%dM' % (c//60,c-(c//60)*60))

结语

遇到这种题我们应该冷静思考,抓住题的本意,寻找规律,总能解决问题。

以上所述是小编给大家介绍的Python计算公交发车时间的完整代码,希望对大家有所帮助!

Python 相关文章推荐
Python的函数嵌套的使用方法
Jan 24 Python
python实现的udp协议Server和Client代码实例
Jun 04 Python
深入理解Python中各种方法的运作原理
Jun 15 Python
Windows系统下使用flup搭建Nginx和Python环境的方法
Dec 25 Python
Python编程对列表中字典元素进行排序的方法详解
May 26 Python
python实现感知器算法详解
Dec 19 Python
numpy中以文本的方式存储以及读取数据方法
Jun 04 Python
Python实现多属性排序的方法
Dec 05 Python
Python3的高阶函数map,reduce,filter的示例详解
Jul 23 Python
python实现桌面托盘气泡提示
Jul 29 Python
Python基于staticmethod装饰器标示静态方法
Oct 17 Python
Python 实现PS滤镜的旋涡特效
Dec 03 Python
详解Django3中直接添加Websockets方式
Feb 12 #Python
Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解
Feb 11 #Python
TensorFlow:将ckpt文件固化成pb文件教程
Feb 11 #Python
TensorFlow获取加载模型中的全部张量名称代码
Feb 11 #Python
tensorflow 获取checkpoint中的变量列表实例
Feb 11 #Python
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解
Feb 11 #Python
python 函数中的参数类型
Feb 11 #Python
You might like
火影忍者:这才是千手柱间和扉间的真正死因,角都就比较搞笑了!
2020/03/10 日漫
PHP函数常用用法小结
2010/02/08 PHP
一步一步学习PHP(1) php开发环境配置
2010/02/15 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
解析arp病毒背后利用的Javascript技术附解密方法
2007/08/06 Javascript
跟我学习javascript的for循环和for...in循环
2015/11/18 Javascript
ajax异步请求详解
2017/01/06 Javascript
vue 动态改变静态图片以及请求网络图片的实现方法
2018/02/07 Javascript
js中DOM事件绑定分析
2018/03/18 Javascript
使用webpack搭建vue项目实现脚手架功能
2019/03/15 Javascript
JS实现图片轮播效果实例详解【可自动和手动】
2019/04/04 Javascript
解决微信小程序调用moveToLocation失效问题【超简单】
2019/04/12 Javascript
vue中使用 pako.js 解密 gzip加密字符串的方法
2019/06/10 Javascript
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
python中的__slots__使用示例
2015/02/26 Python
Python实现在线程里运行scrapy的方法
2015/04/07 Python
python批量创建指定名称的文件夹
2019/03/21 Python
Python 常用模块 re 使用方法详解
2019/06/06 Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
2019/08/12 Python
Django使用消息提示简单的弹出个对话框实例
2019/11/15 Python
python文件和文件夹复制函数
2020/02/07 Python
python使用re模块爬取豆瓣Top250电影
2020/10/20 Python
安装python依赖包psycopg2来调用postgresql的操作
2021/01/01 Python
奥地利汽车配件店:Pkwteile.at
2017/03/10 全球购物
俄罗斯第一家多品牌在线奢侈品精品店:Aizel.ru
2020/09/06 全球购物
自荐信怎么写呢?
2013/12/09 职场文书
单位提档介绍信
2014/01/17 职场文书
高校十八大报告感想
2014/01/27 职场文书
医学专业大学生求职信
2014/07/12 职场文书
2015年个人自我剖析材料
2014/12/29 职场文书
2015年五一劳动节活动总结
2015/02/09 职场文书
高中生个性发展自我评价
2015/03/09 职场文书
2016北大自主招生自荐信模板
2016/01/28 职场文书
高三物理教学反思
2016/02/20 职场文书
2016年基层党组织公开承诺书
2016/03/25 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js