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中基本的日期时间处理的学习教程
Oct 16 Python
Python爬虫模拟登录带验证码网站
Jan 22 Python
Python 3实战爬虫之爬取京东图书的图片详解
Oct 09 Python
TensorFlow变量管理详解
Mar 10 Python
Python numpy 提取矩阵的某一行或某一列的实例
Apr 03 Python
Python使用numpy模块创建数组操作示例
Jun 20 Python
在python中对变量判断是否为None的三种方法总结
Jan 23 Python
python通过对字典的排序,对json字段进行排序的实例
Feb 27 Python
如何将PySpark导入Python的放实现(2种)
Apr 26 Python
Python docutils文档编译过程方法解析
Jun 23 Python
详解Python IO编程
Jul 24 Python
Python中使用subprocess库创建附加进程
May 11 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
不用数据库的多用户文件自由上传投票系统(2)
2006/10/09 PHP
php 变量未定义等错误的解决方法
2011/01/12 PHP
php中socket的用法详解
2014/10/24 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
2017/11/16 PHP
一个很酷的拖动层的js类,兼容IE及Firefox
2009/06/23 Javascript
jQuery ajax 路由和过滤器使用说明
2011/08/02 Javascript
缓动函数requestAnimationFrame 更好的实现浏览器经动画
2012/12/07 Javascript
JS记录用户登录次数实现代码
2014/01/15 Javascript
使用jquery animate创建平滑滚动效果(可以是到顶部、到底部或指定地方)
2014/05/27 Javascript
node.js中的http.response.removeHeader方法使用说明
2014/12/14 Javascript
Node.js的MongoDB驱动Mongoose基本使用教程
2016/03/01 Javascript
Bootstrap 网站实例之单页营销网站
2016/10/20 Javascript
你真的了解BOM中的history对象吗
2017/02/13 Javascript
Angularjs自定义指令Directive详解
2017/05/27 Javascript
基于easyui checkbox 的一些操作处理方法
2017/07/10 Javascript
nuxt+axios解决前后端分离SSR的示例代码
2017/10/24 Javascript
Node之简单的前后端交互(实例讲解)
2017/11/14 Javascript
jQuery实现表格隔行换色
2018/09/01 jQuery
vue模式history下在iis中配置流程
2019/04/17 Javascript
一文看懂如何简单实现节流函数和防抖函数
2019/09/05 Javascript
小程序如何自主实现拦截器的示例代码
2019/11/04 Javascript
[58:09]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第三场 6.2
2018/06/03 DOTA
python读取html中指定元素生成excle文件示例
2014/04/03 Python
python中将zip压缩包转为gz.tar的方法
2018/10/18 Python
一步步教你用python的scrapy编写一个爬虫
2019/04/17 Python
python制作简单五子棋游戏
2019/06/18 Python
Python-Seaborn热图绘制的实现方法
2019/07/15 Python
Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)
2020/06/23 Python
Python与C/C++的相互调用案例
2021/03/04 Python
全面解析HTML5中的标准属性与自定义属性
2016/02/18 HTML / CSS
OLEDBConnection和SQLConnection有什么区别
2013/05/31 面试题
工业自动化毕业生自荐信范文
2014/01/04 职场文书
赔偿协议书
2015/01/27 职场文书
2015年村计划生育工作总结
2015/04/28 职场文书
小学生心理健康活动总结
2015/05/08 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电