[프로그래머스] k진수에서 소수 개수 구하기

최동혁·2022년 12월 17일
0

프로그래머스

목록 보기
28/68

풀이 방법

  1. 10진수 -> n진수 바꾸는 코드
    • n으로 계속 나누면서 나머지 값을 넣어주기
    • 마지막에 뒤집기
  2. 에라토스테네스의 체 사용
    • 각 수마다 제곱근을 이용해야함.

풀이 코드

def solution(n, k):
    answer = 0
    trans = ""
    while n >= 1:
        n, b = divmod(n, k)
        trans += str(b)
    trans = trans[::-1]
    sosu_ls = []
    for num in trans.split("0"):
        if len(num) != 0 and num != "1":
            sosu_ls.append(int(num))
    for num in sosu_ls:
        for i in range(2, int(num ** 0.5) + 1):
            if num % i == 0 and i != 2:
                break
        else:
            answer += 1
    return answer
profile
항상 성장하는 개발자 최동혁입니다.

0개의 댓글