Мюнхгаузно Количество в базовом , также известный как цифра-цифровой инвариант Совершенного или PDDI является типом свойственно положительного целого числа , где сумма его base- цифр повышал до себя равно самого числа. Они названы в честь вымышленного барона Мюнхгаузена , который, по-видимому, поднял себя через свой хвост, чтобы спасти себя от утопления. Связанное понятие - Нарциссические числа .
Например, является тривиальным числом Мюнхгаузена в каждой базе, потому что . Кроме того, каждое положительное целое число является числом Мюнхгаузена с базой 1 по определению.
Что еще более интересно, - это число Мюнхгаузена с базой 10, потому что , и фактически является единственным другим числом Мюнхгаузена с базой 10 .
Частичный список чисел Мюнхгаузена в каждой базе до 35 можно найти в OEIS как последовательность A166623 .
Учитывая положительное целое число , определите, является ли оно числом Мюнхгаузена в любом основании .
правила
- Применяются правила ввода / вывода по умолчанию, поэтому:
- Полная программа или функции приемлемы.
- Входные данные могут быть из STDIN, как аргумент функции, а выходные данные могут быть из STDOUT, как возвращаемое значение функции и т. Д.
- Применяются лазейки по умолчанию.
- Результатом должен быть один из двух разных последовательных результатов. Так что
TRUEэто хорошо для правды иFALSEхорошо для фальши, но вы можете изменить это или вернутьсяNoneдля правды и1фальши или что-то еще. Пожалуйста, укажите выбранные результаты в вашем ответе. - Ваш ответ должен работать хотя бы теоретически для любого натурального числа.
- Числа Мюнхгаузена используют условное обозначение , поэтому - это число Мюнхгаузена с основанием 2 как . Ваш код должен следовать этому соглашению.
- Разъяснения настоятельно приветствуются, хотя в представленных материалах, скорее всего, будет использоваться метод поиска методом перебора.
- Использование эзотерических языков приносит вам очки брауни, поскольку Мюнхгаузен был явно странным человеком.
Тестовые случаи
Truthy
1 (all bases)
2 (base 2)
5 (base 3)
28 (base 9 and base 25)
29 (base 4)
55 (base 4)
3435 (base 10)
923362 (base 9)
260 (base 128)
257 (base 64 and base 253)
Falsy
3
4
591912
3163
17
Это код-гольф , поэтому выигрывает самый короткий ответ на каждом языке (в байтах)!
determine if it's a Munchausen number in any base b≥2.