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自动化构建工具scons使用入门笔记
Mar 10 Python
python使用正则表达式替换匹配成功的组
Nov 17 Python
Python自动化运维之IP地址处理模块详解
Dec 10 Python
Python SQLite3简介
Feb 22 Python
django使用LDAP验证的方法示例
Dec 10 Python
Pandas之Fillna填充缺失数据的方法
Jun 25 Python
在django中,关于session的通用设置方法
Aug 06 Python
python3.6中@property装饰器的使用方法示例
Aug 17 Python
PyTorch中常用的激活函数的方法示例
Aug 20 Python
关于Keras Dense层整理
May 21 Python
Python如何爬取qq音乐歌词到本地
Jun 01 Python
Django中如何用xlwt生成表格的方法步骤
Jan 31 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中include与require使用方法区别详解
2013/10/19 PHP
CI使用Tank Auth转移数据库导致密码用户错误的解决办法
2014/06/12 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
简明json介绍
2008/09/28 Javascript
jQuery 表格插件整理
2010/04/27 Javascript
jquery中对表单的基本操作代码
2010/07/29 Javascript
原生js实现给指定元素的后面追加内容
2013/04/10 Javascript
js获取控件位置以及不同浏览器中的差别介绍
2013/08/08 Javascript
jQuery怎么解析Json字符串(Json格式/Json对象)
2013/08/09 Javascript
使用非html5实现js板连连看游戏示例代码
2013/09/22 Javascript
js根据鼠标移动速度背景图片自动旋转的方法
2015/02/28 Javascript
jQuery动态星级评分效果实现方法
2015/08/06 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
深入浅析react native es6语法
2015/12/09 Javascript
form表单转Json提交的方法(推荐)
2016/09/23 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
2017/07/30 Javascript
JS实现统计字符串中字符出现个数及最大个数功能示例
2018/06/04 Javascript
基于Koa2写个脚手架模拟接口服务的方法
2018/11/27 Javascript
浅谈layui分页控件field参数接收对象的问题
2019/09/20 Javascript
python每次处理固定个数的字符的方法总结
2013/01/29 Python
Python批量按比例缩小图片脚本分享
2015/05/21 Python
python pandas dataframe 行列选择,切片操作方法
2018/04/10 Python
Django数据结果集序列化并展示实现过程
2020/04/22 Python
英国儿童设计师服装的领先零售商:Base
2019/03/17 全球购物
马来西亚在线购物:POPLOOK.com
2019/12/09 全球购物
上海方立数码笔试题
2013/10/18 面试题
北京一家公司的.net开发工程师笔试题
2012/04/17 面试题
市优秀教师事迹材料
2014/02/05 职场文书
离职证明标准格式
2014/09/15 职场文书
服务员态度差检讨书
2014/10/28 职场文书
房屋分割离婚协议书范本
2014/12/01 职场文书
英语读书笔记
2015/07/02 职场文书
2016开学第一课心得体会
2016/01/23 职场文书
使用Djongo模块在Django中使用MongoDB数据库
2021/06/20 Python
JS轻量级函数式编程实现XDM二
2022/06/16 Javascript