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入门之三角函数atan2()函数详解
Nov 08 Python
Python找出最小的K个数实例代码
Jan 04 Python
pandas.dataframe中根据条件获取元素所在的位置方法(索引)
Jun 07 Python
flask框架使用orm连接数据库的方法示例
Jul 16 Python
Python获取航线信息并且制作成图的讲解
Jan 03 Python
Python简直是万能的,这5大主要用途你一定要知道!(推荐)
Apr 03 Python
Python如何基于selenium实现自动登录博客园
Dec 16 Python
pytorch对梯度进行可视化进行梯度检查教程
Feb 04 Python
django-利用session机制实现唯一登录的例子
Mar 16 Python
在python image 中实现安装中文字体
May 16 Python
4种非常实用的python内置数据结构
Apr 28 Python
Pygame游戏开发之太空射击实战敌人精灵篇
Aug 05 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 函数学习简单小结
2010/07/08 PHP
探讨捕获php错误信息方法的详解
2013/06/09 PHP
zf框架db类的分页示例分享
2014/03/14 PHP
smarty模板引擎从配置文件中获取数据的方法
2015/01/22 PHP
详谈php中 strtr 和 str_replace 的效率问题
2017/05/14 PHP
php ajax数据传输和响应方法
2018/08/21 PHP
javascript Array.remove() 数组删除
2009/08/06 Javascript
JS如何将UTC格式时间转本地格式
2013/09/04 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
浅谈Javascript实现继承的方法
2015/07/06 Javascript
原生javascript实现图片无缝滚动效果
2016/02/12 Javascript
JS iFrame加载慢怎么解决
2016/05/13 Javascript
避免jQuery名字冲突 noConflict()方法
2016/07/30 Javascript
第一次接触神奇的Bootstrap菜单和导航
2016/08/01 Javascript
knockoutjs动态加载外部的file作为component中的template数据源的实现方法
2016/09/01 Javascript
自定义require函数让浏览器按需加载Js文件
2016/11/24 Javascript
详解JavaScript的闭包、IIFE、apply、函数与对象
2016/12/21 Javascript
vue2.0+ 从插件开发到npm发布的示例代码
2018/04/28 Javascript
在小程序中集成redux/immutable/thunk第三方库的方法
2018/08/12 Javascript
Vue2.x Todo之自定义指令实现自动聚焦的方法
2019/01/08 Javascript
详解a标签添加onclick事件的几种方式
2019/03/29 Javascript
实现高性能javascript的注意事项
2019/05/27 Javascript
用webAPI实现图片放大镜效果
2020/11/23 Javascript
vue中利用three.js实现全景图的完整示例
2020/12/07 Vue.js
[01:21]DOTA2周边文化主题展 神秘商店火热开售
2017/07/30 DOTA
python类中super()和__init__()的区别
2016/10/18 Python
使用Python实现从各个子文件夹中复制指定文件的方法
2018/10/25 Python
python实现树的深度优先遍历与广度优先遍历详解
2019/10/26 Python
python实现简单图书管理系统
2019/11/22 Python
如何让python的运行速度得到提升
2020/07/08 Python
剪彩仪式主持词
2014/03/19 职场文书
捐款倡议书怎么写
2014/05/13 职场文书
团队拓展活动方案
2014/08/28 职场文书
MySQL数据库⾼可⽤HA实现小结
2022/01/22 MySQL
CentOS7安装GlusterFS集群以及相关配置
2022/04/12 Servers
Golang Web 框架Iris安装部署
2022/08/14 Python