알고리즘

[Lv_2] k진수에서 소수 개수 구하기

빅디 2024. 1. 30. 08:33
728x90
def solution(n, k):
    answer = 0
    for str in convert_notation(n, k).split("0"):
        if len(str) > 0 and int(str) > 1 and check_prime(int(str)):
            answer += 1
    return answer

def convert_notation(n, base):
    T = "0123456789ABCDEF"
    q, r = divmod(n, base)
    return convert_notation(q, base) + T[r] if q else T[r]

def check_prime(num):
    valid = True
    for i in range(2, int(num ** 0.5) + 1):
        if (num % i == 0):
            valid = False
    return valid
PYTHON

 

✔️ 링크: 코딩테스트 연습 - k진수에서 소수 개수 구하기 | 프로그래머스 스쿨 (programmers.co.kr)