import math
def changeToK(n, k):
rev_base = ''
while n > 0:
n, mod = divmod(n, k)
rev_base += str(mod)
return rev_base[::-1]
def isPrime(n):
if n==1: return False
for i in range(2,int(math.sqrt(n))+1):
if n%i==0 : return False
return True
def solution(n, k):
answer = 0
for sn in str(changeToK(n,k)).split("0"):
if sn and isPrime(int(sn)):
answer+=1
return answer
k진법으로 변환한다.
def changeToK(n, k):
rev_base = ''
while n > 0:
n, mod = divmod(n, k)
rev_base += str(mod)
return rev_base[::-1]
0을 기준으로 숫자를 분리한다.
소수인지 확인한다.
def isPrime(n):
if n==1: return False
for i in range(2,int(math.sqrt(n))+1):
if n%i==0 : return False
return True