title: "[프로그래머스] k진수에서 소수 개수 구하기 Python 파이썬 해설 (Level 2) - 이도훈"
cleanUrl: "programmers/92335"
description: "프로그래머스 Level 2 문제 [k진수에서 소수 개수 구하기]의 풀이를 정리합니다."
def kary(n, k):
res = []
while n > 0:
n, mod = divmod(n, k)
res.append(str(mod))
return ''.join(res[::-1])
def isprime(n):
if n == 1:
return False
if n == 2:
return True
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
def solution(n, k):
# 문제가 복잡하게 생겼을 뿐 n진법 문자열을 0을 기준으로 split한 후
# 소수 개수를 세면 되는 문제입니다.
return sum(isprime(int(num)) for num in kary(n, k).split('0') if num != '')
프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges