我的闹钟
我是美国人,我的(数字)闹钟也是如此。要设置警报,它从先前的时间开始。按下小时按钮将其向上移动一小时,而按下分钟按钮将其向上移动一分钟。同时按下两个按钮会将其重置为午夜(上午12:00),并计为两次按下按钮。
当小时数超过上限(12)时,它将重置为1并切换AM / PM指示灯。当分钟数超过上限(59)时,它们将重置为0,而不会影响小时数。
任务
给定开始时间和目标时间,您的任务是输出将我的闹钟设置为目标时间所需的最佳按钮按下次数。
您可以采用最适合您的格式输入。对于这两个输入,程序唯一需要的数据是小时和分钟。举例来说,这意味着您可能会以大纪元以来的毫秒数为单位来提取数据,并提取小时和分钟,但是您可能无法在年,月,秒等中进行任何编码。请注意,尽管您可能会使用“军事时间”(或世界上大部分时间的常规时间),但这不会改变我的时钟的工作方式。
例子
1:15 pm -> 2:30 am
您可以同时按下两个按钮以将其重置为12:00 am,然后增加至2:30 am,即2+2+30 = 34
按下按钮。您也可以增加到凌晨2:30,这就是13+15 = 28
按下按钮。因此,您的输出为28
。
3:58 am -> 4:02 am
您可以重置和递增,这将是2+4+2 = 8
按下按钮。您也可以增加1+4 = 5
按钮的数量。因此,您的输出为5
。
10:55 pm -> 1:00 am
您可以重置和递增,这将是2+1 = 3
按下按钮。您也可以增加3+5=8
按钮的数量。因此,您的输出为3
。
1:00 am -> 1:59 pm
您可以重设和递增,但不仅仅是递增,还要多按三下。因此,您的输出为12+59 =
71
。
测试用例
Current Target = Output
1:15pm 2:30am = 28
3:58am 4:02am = 5
10:55pm 1:00am = 3
1:00am 1:59pm = 71
12:00am 12:00am = 0
6:51pm 12:00am = 2
2:01pm 11:00pm = 25
2:01pm 11:01pm = 9
12:59am 12:01am = 2
11:50am 12:00pm = 11