当前位置: 首页 > wzjs >正文

博物馆网站微信公众号建设方案重庆微信网站建设报价表

博物馆网站微信公众号建设方案,重庆微信网站建设报价表,wordpress 自定义404,做外贸网站格式神奇的闹钟 题目 原题 小蓝发现了一个神奇的闹钟,从纪元时间(19701970 年 11 月 11 日 00:00:0000:00:00)开始,每经过 xx 分钟,这个闹钟便会触发一次闹铃 (纪元时间也会…

神奇的闹钟

题目

原题

小蓝发现了一个神奇的闹钟,从纪元时间(19701970 年 11 月 11 日 00:00:0000:00:00)开始,每经过 xx 分钟,这个闹钟便会触发一次闹铃 (纪元时间也会响铃)。这引起了小蓝的兴趣,他想要好好研究下这个闹钟。

对于给出的任意一个格式为 уууу-MM-ddHH:mm:ssуууу-MM-ddHH:mm:ss 的时间,小蓝想要知道在这个时间点之前 (包含这个时间点) 的最近的一次闹铃时间是哪个时间?

注意,你不必考虑时区问题。

输入格式

输入的第一行包含一个整数 TT,表示每次输入包含 TT 组数据。

接下来依次描述 TT 组数据。

每组数据一行,包含一个时间(格式为 уууу-MM-ddHH:mm:ssуууу-MM-ddHH:mm:ss)和一个整数 xx,其中 xx 表示闹铃时间间隔(单位为分钟)。

输出格式

输出 TT 行,每行包含一个时间(格式为 уууу-MM-ddHH:mm:ssуууу-MM-ddHH:mm:ss),依次表示每组数据的答案。

样例输入

2
2016-09-07 18:24:33 10
2037-01-05 01:40:43 30

样例输出

(3)

学习助手

问题描述

小蓝发现了一个神奇的闹钟,从纪元时间(19701970 年 11 月 11 日 00:00:0000:00:00)开始,每经过 xx 分钟,这个闹钟便会触发一次闹铃 (纪元时间也会响铃)。这引起了小蓝的兴趣,他想要好好研究下这个闹钟。

对于给出的任意一个格式为 уууу-MM-ddHH:mm:ssуууу-MM-ddHH:mm:ss 的时间,小蓝想要知道在这个时间点之前 (包含这个时间点) 的最近的一次闹铃时间是哪个时间?

注意,你不必考虑时区问题。

输入格式

输入的第一行包含一个整数 TT,表示每次输入包含 TT 组数据。

接下来依次描述 TT 组数据。

每组数据一行,包含一个时间(格式为 уууу-MM-ddHH:mm:ssуууу-MM-ddHH:mm:ss)和一个整数 xx,其中 xx 表示闹铃时间间隔(单位为分钟)。

输出格式

输出 TT 行,每行包含一个时间(格式为 уууу-MM-ddHH:mm:ssуууу-MM-ddHH:mm:ss),依次表示每组数据的答案。

样例输入

2
2016-09-07 18:24:33 10
2037-01-05 01:40:43 30

样例输出

2016-09-07 18:20:00
2037-01-05 01:30:00

思路

​ 一个很容易想到的思路是直接获取该时间的时间戳,因为刚好该该事件起始时间为时间戳0,然后直接将时间戳对空格时间取模得到结果,最后直接将结果减去取模的值得到最终结果。但是有个重要点–时区。该问题没处理好会出问题

下面是错误代码(因为时区问题)

import  sys
import datetime  
import time
lens=int(sys.stdin.readline())
data=[]
pattern="%Y-%m-%d %H:%M:%S"
for i in range(lens):times,a,space=sys.stdin.readline().split()times=times+' '+atimes=datetime.datetime.strptime(times,pattern)times=times.timestamp()spaces=times%(int(space)*60)print(datetime.datetime.fromtimestamp(times-spaces).strftime(pattern))

 上述代码中主要问题是:时区,具体来说就是输timestamp()转化得到的时间戳是根据系统时间得到的,然后对该时间戳进行计算。最后在使用datetime变为格式时间,这里会导致时间问题出现问题。解决方法是在每次将datetime变为时间戳和将时间戳变为datetime的时候先设置为UTC时区。修改方法如下

# times:需要修改的datetime对象
times=times.replace(tzinfo=datetime.timezone.utc)

总的来说,这个思路没有问题,但是问题出在时区,因此为了避免这个问题解决方法是:避免时间戳和datetime对象之间的转化,或者直接设置时区后进行转化

设置时区

import sys
import datetimedef main():lens = int(sys.stdin.readline())pattern = "%Y-%m-%d %H:%M:%S"for _ in range(lens):line = sys.stdin.readline().strip()# 分割时间部分和xparts = line.split()# 合并时间部分,格式为 "yyyy-MM-dd HH:mm:ss"time_str = ' '.join(parts[:2])x = int(parts[2])# 解析时间字符串为datetime对象dt = datetime.datetime.strptime(time_str, pattern)# 设置为UTC时区dt_utc = dt.replace(tzinfo=datetime.timezone.utc)timestamp = dt_utc.timestamp()# 计算余数interval = x * 60remainder = timestamp % interval# 最近的响铃时间nearest_timestamp = timestamp - remainder# 转换为datetime对象并格式化输出nearest_dt = datetime.datetime.fromtimestamp(nearest_timestamp, tz=datetime.timezone.utc)# 注意要转换为naive datetime以符合示例输出的格式要求(假设示例输出是UTC时间)# 使用.replace(tzinfo=None)去掉时区信息,但确保时间正确nearest_naive = nearest_dt.replace(tzinfo=None)print(nearest_naive.strftime(pattern))if __name__ == "__main__":main()

避免对象转化

datetime.timedelta是专门设置的时间间隔对象。该对象可以方便的操作。构造方法如下:

datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)

这些参数都是可选对象,这里只需要设置minutes为时间间隔即可。最终代码如下:

import  sys
import datetime  
lens=int(sys.stdin.readline())
data=[]
pattern="%Y-%m-%d %H:%M:%S"
start=datetime.datetime(1970,1,1,0,0,0)
for i in range(lens):times,a,space=sys.stdin.readline().split()times=times+' '+atimes=datetime.datetime.strptime(times,pattern)time_delta=datetime.timedelta(minutes=int(space))time_new=times-(times-start)%time_deltaprint(time_new.strftime(pattern))

文章转载自:

http://H4CphuOT.fsLxc.cn
http://k4VPYo2I.fsLxc.cn
http://xr9iiiOI.fsLxc.cn
http://NKDIaPYc.fsLxc.cn
http://ZB0kMymB.fsLxc.cn
http://hpXg3r2i.fsLxc.cn
http://PBXDIs5Z.fsLxc.cn
http://1dIRQGlr.fsLxc.cn
http://CxQHs9ez.fsLxc.cn
http://MjxAZ2oJ.fsLxc.cn
http://cSLtlMO1.fsLxc.cn
http://Q0dsKitJ.fsLxc.cn
http://0XZ8dRz9.fsLxc.cn
http://OajlwYa4.fsLxc.cn
http://5CbtSdA9.fsLxc.cn
http://EAynEwsc.fsLxc.cn
http://IpLS4SYu.fsLxc.cn
http://NwaeXJQI.fsLxc.cn
http://8QF1cf3w.fsLxc.cn
http://IeO54Au9.fsLxc.cn
http://S4UtFfds.fsLxc.cn
http://gAojUWv8.fsLxc.cn
http://WULRGspm.fsLxc.cn
http://GGYe7Hi6.fsLxc.cn
http://X37lkoxx.fsLxc.cn
http://CzSZivCO.fsLxc.cn
http://TG2NebCc.fsLxc.cn
http://dJ6OuwWm.fsLxc.cn
http://dkeNmojl.fsLxc.cn
http://meQVtTNh.fsLxc.cn
http://www.dtcms.com/wzjs/692889.html

相关文章:

  • 网站开发一般采用什么框架男女做暖暖的试看网站
  • 完全自定义纯代码打造你的wordpress站点侧边栏编程做网站容易还是做软件
  • 有哪些免费做简历的网站app模板素材下载免费
  • 海南营销网站建设手机app与手机网站的区别
  • 网站增加关键字天津建设网站安全员考试查询
  • 网站出租建设做洗衣液的企业网站
  • 兰州网站推广丰涵网站建设
  • 江西数据平台网站建设wordpress数据库版本
  • 小说网站建设之前需求分析wordpress aike主题
  • thinkphp购物网站开发视频建设通官网app下载
  • 门户网站建设经验总结报告个人承包工程合同范本
  • 一个企业网站的建设流程网站怎么做充值系统下载
  • 网站开发需要哪些软件开源低代码平台
  • 景安网站品牌建设不足的原因
  • dw网站建设框架大小设定代备案域名30元
  • p2p贷款网站制作东莞城乡住房建设厅网站
  • win7怎么做网站服务器做公司网站需要什么程序
  • 做烘焙的网站美容北京公司网站建设
  • 精美ppt模板免费下载网站做网站应该了解什么软件
  • 网站优化托管方案文库网络营销与直播电商专业就业方向
  • 怎么用dw软件做网站wordpress ios版
  • 网站轮播动态图如何做上海知名网站开发公司
  • 有关网站建设的书网站设计网站项目流程图
  • 哈尔滨网页网站制作天津做网架公司
  • 上海集团网站建设价格网页设计师女生工资
  • 自己服务器建设网站国际最新军事新闻
  • 有哪个网站是成都中科大旗做的如何提交网站地图
  • 哪个网站做免费小程序网站建设属于办公费吗
  • 网站空间购买800福建工程建设中心网站
  • 无法连接到wordpress站点网站设计 网站推广 网站优化