还剩多久?
最近,我在手机上使用5分钟计时器制作披萨。当有人走进来问我还剩多久时,我一开始就如何回答这个问题感到困惑。您会发现,如果当前时间的计时器是3:47,那么当我大声读出“三分四十七秒”时,时间就会变了。因此,我需要找到一个计时器,正好在我将其读出后才能到达。
这是您的挑战:自动化此过程。给定时间以任何合适的格式(用“:”定界,或者作为分秒和第二个参数),输出从当前时刻开始的最早时间,这将花费与读取计时器相同的时间量至。我们假设每个音节需要1秒钟才能读出。
进一步规定
- 您必须将“分钟”和“秒”分别算作两个音节,以及它们之间的“与”。
- 披萨的烹饪时间不会超过59:59。
- “ 11分零秒”不是10个音节:您必须简化为“ 11分钟”(即5个音节)。分钟也是如此:“ 0分钟7秒”也仅算作4个音节。
- 您的程序可以以任何格式提供输出:的数组
[minutes, seconds]
,甚至是<minutes> minutes and <seconds> seconds
(写出普通文本)。 - 有标准漏洞。
- 这是代码高尔夫球,因此最短答案以字节为单位。
测试用例
所有输入为 (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