Как долго осталось?
Недавно я делал пиццу, используя 5-минутный таймер на моем телефоне. Когда кто-то вошел и спросил меня, как долго осталось, я сначала был озадачен тем, как ответить на вопрос. Видите ли, если бы таймер в текущий момент был в 3:47, то к тому времени, когда я зачитал вслух «Три минуты сорок семь секунд», время изменилось бы. Поэтому мне нужно найти время, таймер будет достичь только , как я дочитать его.
Это ваша задача: автоматизировать этот процесс. Если задано время в любом подходящем формате (с разделителем ":" или в качестве аргумента минуты и секунды), выведите самое раннее время из этого текущего момента, которое будет считываться равным количеством времени, которое потребовалось бы таймеру для получения к. Мы предполагаем, что каждый слог считывается за 1 секунду.
Дальнейшие правила
- Вы должны считать «минуты» и «секунды» как два слога каждый, а также «и» между ними.
- На приготовление пиццы никогда не уйдет больше 59:59.
- «11 минут и 0 секунд» - это не 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