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使用QRCode模块生成二维码实例详解
Jun 14 Python
Python动态导入模块的方法实例分析
Jun 28 Python
python list格式数据excel导出方法
Oct 31 Python
python TF-IDF算法实现文本关键词提取
May 29 Python
python中的线程threading.Thread()使用详解
Dec 17 Python
python机器学习库xgboost的使用
Jan 20 Python
Python 使用 environs 库定义环境变量的方法
Feb 25 Python
利用django model save方法对未更改的字段依然进行了保存
Mar 28 Python
python如何删除列为空的行
Jul 17 Python
python 爬虫基本使用——统计杭电oj题目正确率并排序
Oct 26 Python
Python基础知识学习之类的继承
May 31 Python
opencv-python图像配准(匹配和叠加)的实现
Jun 23 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
PHP面向对象程序设计之对象生成方法详解
2016/12/02 PHP
php探针使用原理和技巧讲解
2019/09/17 PHP
JavaScript异步调用定时方法并停止该方法实现代码
2012/03/16 Javascript
jQuery 获取浏览器所在的IP地址的小例子
2013/11/08 Javascript
JavaScript错误处理
2015/02/03 Javascript
jQuery实现径向动画菜单效果
2015/07/17 Javascript
jQuery+css实现的蓝色水平二级导航菜单效果代码
2015/09/11 Javascript
JavaScript中字符串与Unicode编码互相转换的实现方法
2015/12/18 Javascript
javascript每日必学之继承
2016/02/23 Javascript
javascript数组去重小结
2016/03/07 Javascript
jQuery实现无限往下滚动效果代码
2016/04/16 Javascript
jquery显示隐藏元素的实现代码
2016/05/19 Javascript
JavaScript登录验证码的实现
2016/10/27 Javascript
jQuery Easyui 下拉树组件combotree
2016/12/16 Javascript
JavaScript实现简单图片轮播效果
2017/08/21 Javascript
Angular中响应式表单的三种更新值方法详析
2017/08/22 Javascript
浅谈vue中.vue文件解析流程
2018/04/24 Javascript
微信小程序实现图片上传
2019/05/23 Javascript
深入讲解Java编程中类的生命周期
2016/02/05 Python
Python安装第三方库及常见问题处理方法汇总
2016/09/13 Python
Python面向对象程序设计OOP深入分析【构造函数,组合类,工具类等】
2019/01/05 Python
python实现微信自动回复及批量添加好友功能
2019/07/03 Python
python3中替换python2中cmp函数的实现
2019/08/20 Python
pip install python 快速安装模块的教程图解
2019/10/08 Python
Python中itertools的用法详解
2020/02/07 Python
aws 通过boto3 python脚本打pach的实现方法
2020/05/10 Python
解决Pycharm 运行后没有输出的问题
2021/02/05 Python
使用HTML5的表单验证的简单示例
2015/09/09 HTML / CSS
查询优化的一般准则有哪些
2015/03/08 面试题
物流司机岗位职责
2013/12/28 职场文书
奥巴马开学演讲稿
2014/05/15 职场文书
小学生九一八纪念日83周年演讲稿500字
2014/09/17 职场文书
意外伤害赔偿协议书范本
2014/09/28 职场文书
教师求职自荐信范文
2015/03/04 职场文书
超市主管竞聘书
2015/09/15 职场文书
Python可视化学习之matplotlib内置单颜色
2022/02/24 Python