cnkizy 发表于 2018-1-30 13:53:15

每日一题已经好久没出了,我发个我在工作中遇到的一个难题

本帖最后由 cnkizy 于 2018-1-30 13:56 编辑

这个难题是我在实际工作中遇到的,代码目的是用来统计某个上位机app发送数据的时长,应客户要求被领导故意设计成这样的,要是我才不会这么写呢,也怪自己算法学的差,数据结构学的差。导致加班加到凌晨,脑袋爆炸。现在想想还是耿耿于怀,现在和鱼友们一起看看是啥题。


首先定义以下时间概念


    Day                        Middle            Night


'['是开区间符号                ')'是闭区间符号

上面的话翻译过来意思是

昨晚22:00 - 今天的5:59:59 这个时间段为 'Day'

今天6:00 - 今天的13:59:59 这个时间段为 'Middle'

今天14:00 - 今天的21:59:59 这个时间段为 'Night'


我当时使用的时间格式是‘yyyy-MM-dd HH:mm:ss’ 当然了这里看鱼油爱好了,随意吧。以下时间不足1小时按1小时计算

现给出一段时间

#                        起始时间,结束时间
timeArray = [('10:00','18:00'),        #假设这天是1月1日
                        ('12:00','14:00'),        #假设这天是1月2日
                        ('13:00','19:00'),        #假设这天是1月3日
                        ('9:00','5:00')        #假设这天是1月4日
                        ]


输出的结果是
>>1月1日 Day:4,Middle:4,Night:0
>>1月2日 Day:2,Middle:0,Night:0
>>1月3日 Day:0,Middle:1,Night:3
>>1月4日 Day:5,Middle:8,Night:1

我来分析下 第1个
10:00 在 'Day'   区间 14:00(day结束位置) - 10:00 = 4
18:00 在 'Middle'区间 18:00 - 14:00(mid起始位置) = 4
               'Night' 区间 None = 0
第2个
12:00 在 'Day'   区间 14:00 - 12:00 = 2
14:00 在 'Middle'区间 14:00 - 14:00 = 0
               'Night' 区间 None = 0
第3个
               'Day'       区间 None = 0
13:00 在 'Middle'区间 14:00 - 13:00 = 1
19:00 在 'Night' 区间 22:00 - 19:00 = 3

第4个
9:00 在 'Day'       区间 14:00 - 9:00 = 5
       经过 'Middle'区间 = 8
5:00 在 'Night'区间 6:00-5:00 = 1


总体说来也不算太难,要冷静分析,我当时加班加糊涂了,乱写一通,结果对就Ok了,也不管有无BUG。{:10_266:} 希望接手的兄dei不要来砍我。
               

如果有不完整或疏漏的地方请予以指正,我会尽快修正,谢谢各位鱼油。


小明吖 发表于 2018-3-2 10:02:31

{:10_279:}

jerryleong 发表于 2018-3-2 10:41:54

{:10_245:}

南城顾她 发表于 2018-3-2 11:01:52

可不可以参考下你的源代码

graceasyi 发表于 2018-3-2 13:07:27

{:5_92:}

小小小菜菜菜 发表于 2018-12-20 13:10:26

{:5_108:}

晓屁屁 发表于 2018-12-20 15:01:39

是不是就是统计 上午 中午 晚上总共用几个小时是不

1809228982 发表于 2018-12-22 11:03:18

看看{:10_256:}

X用户 发表于 2018-12-22 13:52:21

{:10_266:}

扩展阅读 发表于 2018-12-24 15:18:13

{:10_257:}{:10_257:}{:10_257:}奇特

winsome8538 发表于 2020-2-21 18:03:30

{:5_97:}厉害

王富帅 发表于 2020-3-8 09:42:11

{:10_256:}厉害

心驰神往 发表于 2020-11-17 09:51:13

{:5_90:}
页: [1]
查看完整版本: 每日一题已经好久没出了,我发个我在工作中遇到的一个难题