Я не перевіряв пісочницю перед тим, як опублікувати цей виклик - схоже, цей виклик був запропонований Cᴏɴᴏʀ O'Bʀɪᴇɴ .
З огляду на ціле число, напишіть програму, яка надрукує загадку "чотири - це магічне число"
- Четверо - це магічне число
- П’ять - це чотири, а чотири - магічне число
- Шість - це три, а три - п’ять, а п’ять - чотири, а чотири - магічне число
- Одинадцять - шість і шість - три і три - п’ять і п’ять - чотири, а чотири - магічне число
- П'ятсот одинадцять і одинадцять - шість і шість - три і три - п’ять і п'ять - чотири і чотири - це магічне число
Якщо ви вже знаєте загадку чи занадто ледачий, щоб розв’язати її тривожно, щоб дізнатися, що таке загадка, ось вам пояснення
Наступне число - це кількість літер у попередньому номері. Так, наприклад, у п'яти є чотири літери, тому наступне число - чотири .
шість має три літери, тому наступне число - 3 , а три - п’ять літер, тому наступне число - 5 , а п’яте - чотири літери, тому наступне число - 4
Причина загадки закінчується на чотири, тому що чотири мають чотири літери , а чотири - чотири і чотири - чотири, а чотири - чотири ... (чотири - магічне число)
Випробування
0 =>
Zero is four and four is the magic number
1 =>
One is three and three is five and five is four and four is the magic number
2 =>
Two is three and three is five and five is four and four is the magic number
3 =>
Three is five and five is four and four is the magic number
4 =>
Four is the magic number
5 =>
Five is four and four is the magic number
6 =>
Six is three and three is five and five is four and four is the magic number
7 =>
Seven is five and five is four and four is the magic number
8 =>
Eight is five and five is four and four is the magic number
9 =>
Nine is four and four is the magic number
10 =>
Ten is three and three is five and five is four and four is the magic number
17 =>
Seventeen is nine and nine is four and four is the magic number
100 =>
One Hundred is ten and ten is three and three is five and five is four and four is the magic number
142 =>
One Hundred Forty Two is eighteen and eighteen is eight and eight is five and five is four and four is the magic number
1,000 =>
One Thousand is eleven and eleven is six and six is three and three is five and five is four and four is the magic number
1,642 =>
One Thousand Six Hundred Forty Two is twenty nine and twenty nine is ten and ten is three and three is five and five is four and four is the magic number
70,000 =>
Seventy Thousand is fifteen and fifteen is seven and seven is five and five is four and four is the magic number
131,072 =>
One Hundred Thirty One Thousand Seventy Two is thirty seven and thirty seven is eleven and eleven is six and six is three and three is five and five is four and four is the magic number
999,999 =>
Nine Hundred Ninety Nine Thousand Nine Hundred Ninety Nine is fifty and fifty is five and five is four and four is the magic number
Правила
- Вхід може бути взято з
STDIN
аргументу функції або як аргумент - Вхід буде додатним числом від 0 до 999,999
- Вхід буде містити лише цифри (він буде слідувати регулярному вираженню
^[0-9]+$
) - Вхід може бути прийнятим як ціле число або рядок
- При перетворенні на рядки слова пробіли та дефіси не повинні включатися до числа (100 [Сто] - це 10 символів, а не 11. 1,742 [одна тисяча сімсот сорок дві] - це 31 символ, а не 36)
- При перетворенні на рядок 100 має бути сто, а не сто чи сотня, 1000 має бути одна тисяча, а не тисяча чи тисяча.
- При перетворенні в рядок 142 повинна бути сто сорок дві, а НЕ сто і сорок два
- Вихід чутливий до регістру , і повинен відповідати формату « N є До і К є М і М є ... і чотири цим число магії» (якщо вхідний сигнал НЕ дорівнює 4, і в цьому випадку вихідний сигнал повинен бути просто «чотири це магічне число ")
- Вихід може використовувати цифри замість літер ("5 - це 4 і 4 - це магічне число", а не "п'ять - це чотири, а чотири - магічне число"), якщо ваша програма завжди відповідає
- Вихід може бути або зворотним значенням функції, або надрукованим на
STDOUT
- Застосовуються стандартні лазівки
- Це код-гольф , тому виграє найкоротша програма в байтах. Удачі!
Бонус
-30 байт, якщо програма працює, коли вхід знаходиться між -999,999 і 999,999.
Негативні числа при перетворенні на слова просто мають "негатив" перед собою. Наприклад -4
, "Негативна четвірка", Негативна четвірка - дванадцять і дванадцять - шість і шість - три і три - п'ять і п'ять - чотири і чотири - магічне число
-150 байт, якщо програма не використовує жодних вбудованих функцій для генерації рядкового представлення числа
Таблиця лідерів
Це фрагмент стека, який генерує як таблицю лідерів, так і огляд переможців за мовою.
Щоб відповідь відображалася, будь ласка, почніть свою відповідь із заголовка, використовуючи наступний шаблон Markdown
## Language Name, N bytes
Де N - розмір поданих вами даних у байтах
Якщо ви хочете включити у свій заголовок декілька чисел (наприклад, пробивання старих балів чи включення прапорів у кількість байтів), просто переконайтесь, що фактичний бал є останнім номером у вашому заголовку
## Language Name, <s>K</s> X + 2 = N bytes