상세 컨텐츠

본문 제목

[코테] 프로그래머스 파이썬 Lv2. k진수에서 소수 개수 구하기 - 소수와 진수

코테

by Graceful_IT 2024. 1. 6. 22:31

본문

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

정수 n과 k가 매개변수로 주어집니다. n을 k진수로 바꿨을 때, 변환된 수 안에서 찾을 수 있는 위 조건에 맞는 소수의 개수를 return 하도록 solution 함수를 완성해 주세요.

 

 

소수인지 확인하는 함수와 k진수로 바꾸는 로직을 구분하여 진행하였다.소수 파악하기

def is_prime_number(x):
    if x ==1 :
        return False
    for i in range(2, int(x**0.5) +1):
        if x % i == 0:
            return False 
    return True

 

 

k진수로 바꾸고 조건에 맞는 소수 구하기

def solution(n, k):
    answer = 0
    result=''
    
    # k진수로 변환
    while n > 0:
        remainder=n%k
        n//=k
        result=str(remainder)+result
    
    # 조건 확인
    split_result=result.split("0")
    for i in split_result:
        if i.isdigit() and is_prime_number(int(i)):
            answer+=1
        
    return answer

 

관련글 더보기