あとどれくらい?
最近、携帯電話で5分間のタイマーを使ってピザを作っていました。誰かが入って来て、あとどれくらい残っているかと私に尋ねると、最初は質問の答え方についてちょっと混乱しました。現時点でのタイマーが3:47であった場合、「3分47秒」と読み上げた時点で、時間は変更されていたはずです。したがって、タイマーを読み終えた直後にタイマーが到達する時間を見つける必要があります。
これがあなたの挑戦です。このプロセスを自動化することです。適切な形式( ":"で区切られた、または分と2番目の引数として)で時間を指定し、タイマーが取得するのに必要な時間と同じ時間の読み取りにかかる現在の時点から最も早い時間を出力します。に。各音節の読み取りには1秒かかると想定しています。
さらなるルール
- 「分」と「秒」をそれぞれ2つの音節、およびそれらの間の「および」としてカウントする必要があります。
- ピザの調理に59:59以上かかることはありません。
- 「11分0秒」は10音節ではありません。「11分」(5音節)に簡略化する必要があります。分も同様です。「0分7秒」も4音節としてカウントされます。
- プログラムは、任意の形式で出力を提供できます:の配列
[minutes, seconds]
、または<minutes> minutes and <seconds> seconds
(通常のテキスト出力)。 - 標準の抜け穴が適用されます。
- これはcode-golfであるため、バイト単位の最短回答が優先されます。
テストケース
すべての入力として (minutes, seconds)
(4, 47) = (4, 38) (Four MiNutes And ThirTy Eight SeConds - 9 syllables/seconds)
(1, 1) = (0, 56) (FifTy-Six SeConds - 5 syllables/seconds)
(59, 57) = (59, 46) (FifTy Nine Minutes And Forty Six SeConds - 11 syllables/seconds)
(0, 10) = null/error/0 (no positive answer)
音節カウントのリファレンス
参考までに、59までの各番号の音節の数を以下に示します。
0,0 (does not need to be counted)
1,1
2,1
3,1
4,1
5,1
6,1
7,2
8,1
9,1
10,1
11,3
12,1
13,2
14,2
15,2
16,2
17,3
18,2
19,2
20,2
21,3
22,3
23,3
24,3
25,3
26,3
27,4
28,3
29,3
30,2
31,3
32,3
33,3
34,3
35,3
36,3
37,4
38,3
39,3
40,2
41,3
42,3
43,3
44,3
45,3
46,3
47,4
48,3
49,3
50,2
51,3
52,3
53,3
54,3
55,3
56,3
57,4
58,3
59,3