私の目覚まし時計
私はアメリカ人です。私の(デジタル)目覚まし時計もそうです。アラームを設定するには、以前の時刻に開始します。時ボタンを押すと1時間上に移動し、分ボタンを押すと1分上に移動します。両方のボタンを同時に押すと、真夜中(午前12:00)にリセットされ、ボタンを2回押すとカウントされます。
時間が上限(12)を超えると、1にリセットされ、AM / PMライトが切り替わります。分が上限(59)を超えると、時間に影響を与えずに0にリセットされます。
タスク
タスクには、開始時間と目標時間を指定して、アラームを目標時間に設定するために必要なボタンの最適な押し回数を出力します。
最適な形式で入力できます。プログラムが必要とする唯一のデータは、両方の入力に対して時間と分です。これは、たとえば、エポックからミリ秒としてデータを取得し、時間と分を抽出できることを意味しますが、年、月、秒などに何もエンコードすることはできません。 「軍事時間」(または世界のほとんどの場合は通常の時間)が、それは私の時計の動作を変更しません。
例
1:15 pm -> 2:30 am
両方のボタンを押し下げて午前12:00にリセットし、次に2+2+30 = 34
ボタンを押すと午前2:30に増分できます。13+15 = 28
ボタンを押すと、午前2時30分まで増分することもできます。したがって、出力は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
リセットして増分することもできますが、それは単に増分するよりもさらに3回押すことです。したがって、出力は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