integer가 주어지면 부분 문자열로 포함 되는 1보다 큰 n
최소 지수를 출력하십시오 .e
n^e
n
예를 들어,에 대한 25
답이 있어야 2
로서 25 ^ 2 = 625
포함하는 25
문자열로서, 그러나 대한 대답 13
되어야이 10
같은 13 ^ 10 = 137858491849
때문에 10
결과에 포함되는 최저 지수 인 13
문자열로.
규칙
- 표준 I / O 규칙
- 표준 허점 적용
- 바이트 단위의 최단 코드 승리
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)
처음 1000 개의 답변을 생성하는 Python 스크립트
답변
답변
R , 69 44 바이트
function(n,i=2){while(!grepl(n,n^i))i=i+1;i}
익명의 기능. BigZ로 변환 i
될 때 크게 작동합니다 n
(TIO 참조). 주세페와 digEmAll을 가르쳐 주셔서 감사합니다!
답변
파이썬 2 , 42 41 바이트
Ørjan Johansen 덕분에 -1 바이트 (반환 y
)
f=lambda x,y=2:y*(`x`in`x**y`)or f(x,y+1)
설명 / 비 골프
우리가 성공할 때까지 에서 시도하는 재귀 함수 :
# Start recursion with y=2
def f(x,y=2):
# If we succeed, we arrived at the desired y
if `x` in `x**y`:
return y
# Else we try with next y
else:
return f(x, y+1)
답변
자바 스크립트 (ES6 / Node.js), 41 40 바이트
@Shaggy 덕분에 1 바이트 절약
입력을 숫자 ( ) 또는 BigInt 리터럴로 사용합니다.
n=>(g=x=>`${x*=n}`.match(n)?2:-~g(x))(n)
답변
APL (Dyalog Unicode) , 25 23 17 바이트
@Erik the Outgolfer 덕분에 -2 바이트
@ngn 덕분에 -6 바이트
코드를 사용자 정의하지 않아도 만드는 @ H.PWiz 덕분에 ⎕pp
(인쇄 정밀도)
⊢⍟×⍣(∨/(⍕÷)⍷0⍕⊣)⍨
⊢⍟×⍣(∨/(⍕÷)⍷0⍕⊣)⍨
×⍣( )⍨ generates a geometric progression by repeatedly multiplying the argument
by its original value
∨/(⍕÷)⍷0⍕⊣ the progression stops when this function, applied between the new and the
last old member, returns true
÷ the original argument (ratio between two consecutive members)
⍕ formatted as a string
⍷ occurrences within...
0⍕ ...the formatted (with 0 digits after the decimal point)...
⊣ ...new member
∨/ are there any?
⊢⍟ use logarithm to determine what power of ⍵ we reached
답변
답변
Brachylog , 8 바이트
;.^s?∧ℕ₂
설명
;.^ Input ^ Output…
s? …contains the Input as a substring…
∧ …and…
ℕ₂ …the Output is in [2,+∞)