Принимая во внимание целое число n
, выходное наименьший показатель e
больше , чем 1 таким образом, что n^e
содержит в n
качестве подстроки.
Например, для 25
, ответ должен быть 2
, как 25 ^ 2 = 625
, который содержит 25
в качестве подстроки, но ответ для 13
должен быть 10
, как 13 ^ 10 = 137858491849
, 10
как и самый низкий показатель, для которого результат содержит 13
в качестве подстроки.
правила
- Стандартные правила ввода / вывода
- Применяются стандартные лазейки
- Самый короткий код в байтах выигрывает
n
всегда будет целым числом больше, чем0
Тестовые случаи
1 => 2 (1 ^ 2 = 1)
2 => 5 (2 ^ 5 = 32)
3 => 5 (3 ^ 5 = 243)
4 => 3 (4 ^ 3 = 64)
5 => 2 (5 ^ 2 = 25)
6 => 2 (6 ^ 2 = 36)
7 => 5 (7 ^ 5 = 16807)
8 => 5 (8 ^ 5 = 32768)
9 => 3 (9 ^ 3 = 729)
10 => 2 (10 ^ 2 = 100)
11 => 11 (11 ^ 11 = 285311670611)
12 => 14 (12 ^ 14 = 1283918464548864)
13 => 10 (13 ^ 10 = 137858491849)
14 => 8 (14 ^ 8 = 1475789056)
15 => 26 (15 ^ 26 = 3787675244106352329254150390625)
16 => 6 (16 ^ 6 = 16777216)
17 => 17 (17 ^ 17 = 827240261886336764177)
18 => 5 (18 ^ 5 = 1889568)
19 => 11 (19 ^ 11 = 116490258898219)
20 => 5 (20 ^ 5 = 3200000)
25 => 2 (25 ^ 2 = 625)
30 => 5 (30 ^ 5 = 24300000)
35 => 10 (35 ^ 10 = 2758547353515625)
40 => 3 (40 ^ 3 = 64000)
45 => 5 (45 ^ 5 = 184528125)
50 => 2 (50 ^ 2 = 2500)
55 => 11 (55 ^ 11 = 13931233916552734375)
60 => 2 (60 ^ 2 = 3600)
65 => 17 (65 ^ 17 = 6599743590836592050933837890625)
70 => 5 (70 ^ 5 = 1680700000)
75 => 3 (75 ^ 3 = 421875)
80 => 5 (80 ^ 5 = 3276800000)
85 => 22 (85 ^ 22 = 2800376120856162211833149645328521728515625)
90 => 3 (90 ^ 3 = 729000)
95 => 13 (95 ^ 13 = 51334208327950511474609375)
100 => 2 (100 ^ 2 = 10000)
Python скрипт для генерации первых 1000 ответов
Ответы:
Perl 6 , 31 байт
Попробуйте онлайн!
источник
R ,
6944 байтАнонимная функция. Работает на больших,
i
когдаn
конвертируется в BigZ (см. TIO). Спасибо за то, что научили меня Джузеппе и digEmAll!Попробуйте онлайн!
источник
n, ?n^i
и по умолчанию онpaste
конвертируетсяcharacter
:-)i
должно быть достаточно.i
также в bigZPython 2 ,
4241 байт-1 байт благодаря Эрджану Йохансену (возвращающемуся
y
прямо)Попробуйте онлайн!
Объяснение / Ungolfed
Рекурсивная функция пытается от2,3… пока не получится:
Попробуйте онлайн!
источник
JavaScript (ES6 / Node.js),
4140 байтСохранено 1 байт благодаря @Shaggy
Попробуйте онлайн!
источник
n=>(g=x=>
$ {x * = n}.match(n)?2n:-~g(x))(n)
APL (Dyalog Unicode) ,
252317 байт-2 байта благодаря @Erik Outgolfer
-6 байт благодаря @ngn
спасибо @ H.PWiz за то, что код не требует пользовательского
⎕pp
(точность печати)Попробуйте онлайн!
источник
17
в 17 ^ 14 = 1.6837782655940093E17, но idk к тому, какие точные ответы должны поддержать⎕PP
я думаюPyth , 9 байт
Попробуйте онлайн!
источник
Брахилог , 8 байт
Попробуйте онлайн!
объяснение
источник
05AB1E , 7 байтов
Попробуйте онлайн!
Объяснение:
источник
SAS,
7166 байтРедактировать: удалено
;run;
в конце, поскольку подразумевается в конце входных данных.Входные данные вводятся после
cards;
выписки, вот так:Создает набор данных,
a
содержащий входныеn
и выходные данныеe
.источник
%p(n)
) вполне нормально, однако вывод зависит от того,macro
могут ли s в SAS возвращать значения. Если они могут вернуться, «output» должен быть возвращен результат, в противном случае он должен выводить его любым поддерживаемым стандартным методом выводаЖеле , 7 байт
Попробуйте онлайн!
источник
Чисто , 99 байт
Попробуйте онлайн!
Если это не нужно работать для гигантских огромных чисел, то
Чистый , 64 байта
Попробуйте онлайн!
источник
Java (OpenJDK 8) , 84 байта
Принимает input как String, представляющий число, и выводит int.
Большинство байтов происходит от многословия
BigDecimal
существа, необходимого для обработки больших чисел.Попробуйте онлайн!
Как это устроено
Это довольно просто, но я включу объяснение для потомков;
источник
Рубин , 37 байт
Попробуйте онлайн!
источник
Japt, 10 байт
Попытайся
источник
JavaScript (Node.js) , 45 байт
Тестовые случаи взяты из ответа @ Арнаулда
Попробуйте онлайн!
источник
Древесный уголь , 19 байт
Попробуйте онлайн! Ссылка на подробную версию кода. Объяснение:
Повторяйте до тех пор, пока длина списка не станет как минимум 2, а его произведение содержит входные данные ...
... приведите ввод к целому числу и поместите его в список.
Приведите длину списка к строке и неявно напечатайте его.
источник
Python 3 ,
6358 байтПопробуйте онлайн!
Python2, вероятно, будет короче, но мне нравится использовать 3. Приходить к лямбде сложно, но я пытаюсь кое-что сделать.
источник
while
есть лямбда. Может быть, я могу попробовать другие способы ..e
в списке arguments (т.е.def f(n,e=2)
) иn**e
сохраняя несколько байтов, Python 2 действительно сохранит довольно много байтов.for
илиwhile
не работают.MathGolf , 10 байт
Попробуйте онлайн!
объяснение
Это кажется крайне расточительным: приходится дважды читать входные данные, а счетчик циклов увеличивать вдвое.
источник
Рубин , 41 байт
Попробуйте онлайн!
источник
C # (.NET Core) ,
10489 байтПопробуйте онлайн!
-1 байт: изменено для цикла на while (благодаря Skidsdev )
-14 байт: использовано странную обработку строк в C # для удаления
ToString()
вызововНужно использовать C # BigInteger библиотеку , поскольку стандартные числовые типы C # (int, double, long, ulong и т. Д.) Не подходят для некоторых больших чисел (включая 12, 15 и 17).
Ungolfed:
источник
Python 2 , 47 байт
Попробуйте онлайн!
Вдохновленный @ гигафлоп в растворе .
источник
Tcl , 69
81байтПопробуйте онлайн!
источник
PowerShell (V3 +), 67 байт
источник
Common Lisp, 78 байт
Попробуйте онлайн!
источник
J , 26 байт
Попробуйте онлайн!
Примечание: Я изменил финал ,
]
чтобыx:
в TIO, чтобы сделать тесты проходят для больших целых чисел.источник
Oracle SQL, 68 байт
Существует предположение, что номер источника хранится в таблице
t(x)
, напримерТест в SQL * Plus
источник