본문 바로가기

Algorithm/Implementation

(Python3) - 프로그래머스(코딩테스트 입문) : 저주의 숫자 3

반응형

https://school.programmers.co.kr/learn/courses/30/lessons/120871

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

구현 문제였습니다.

📕 풀이방법

📔 입력 및 초기화

정답 변수 answer 선언 후 0으로 초기화합니다.

📔 풀이과정

1에서 n까지 for loop를 수행하며 다음을 진행합니다.1. answer를 1더해줍니다.

 

2. answer값이 3의 배수가 아니면서 숫자 3이 들어간 동안 while문을 수행하면서 answer를 1증가 시켜줍니다. 12, 13인 경우 한번에 2개 건너뛰어야 하기 때문에 해당 loop를 수행해야합니다.

📔 정답 출력 | 반환

answer를 반환합니다.


📕 Code

📔 Python3

def solution(n):
    answer = 0
    for i in range(1,n+1):
        answer += 1
        while answer % 3 == 0 or str(answer).find('3') >= 0:
            answer += 1
    return answer

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.