삽집하는 개발들/알고리즘

[63일차][Lv0][프로그래머스][120871]저주의 숫자3

악투 2023. 10. 7. 01:52
반응형

문제 설명

3x 마을 사람들은 3을 저주의 숫자라고 생각하기 때문에 3의 배수와 숫자 3을 사용하지 않습니다. 3x 마을 사람들의 숫자는 다음과 같습니다.

10진법  3x 마을에서 쓰는 숫자  10진법  3x  마을에서 쓰는 숫자
1 1 6 8
2 2 7 10
3 4 8 11
4 5 9 14
5 7 10 16

 

제한 사항

1 ≤ n ≤ 100

 

입출력

n result
15 25
40 76

 

코드 및 설명

def solution(n):
    n_arr = [ idx+1 for idx in range(n)]
    
    for number in n_arr:
        if number % 3 == 0 or str(number).find('3') >= 0:  
            n_arr.append(max(n_arr)+1)
            
    return len(n_arr)

갑자기 lv2를 풀다가 추천문제라고 뜨길래 한번 풀어봤다.

3의 배수와 3이 들어간 숫자를 안 쓰는 마을이 있다. n의 값이 15로 주어지면 1,2,3,4,5,6 순서대로 가면서 중간에 3의 배수 또는 3이 들어간 숫자가 있으면 배열 제일 큰 수에 +1해서 다시 넣어주면 이 마을에서 15번은 몇번째에 위치하는 지 알 수 있게 된다!

 

반응형