https://school.programmers.co.kr/learn/courses/30/lessons/120871
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제
3x 마을 사람들은 3을 저주의 숫자라고 생각하기 때문에 3의 배수와 숫자 3을 사용하지 않습니다. 3x 마을 사람들의 숫자는 다음과 같습니다.
정수 n이 매개변수로 주어질 때, n을 3x 마을에서 사용하는 숫자로 바꿔 return하도록 solution 함수를 완성해주세요.
제출 답안
3의 배수와 숫자 3이 들어가는 수를 제외한 새로운 숫자의 배열을 만든 후 인덱싱함
def solution(n):
newnum=[i for i in range(1, 200) if i%3!=0 and "3" not in str(i)]
return newnum[n-1]
개선 답안
3의 배수와 숫자 3이 들어가는 수가 아닐 시 count해 찾음
def solution(n):
answer = 0
for _ in range(n):
answer += 1
while answer % 3 == 0 or '3' in str(answer):
answer += 1
return answer
참고 자료
https://school.programmers.co.kr/learn/courses/30/lessons/120871/solution_groups?language=python3
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
'알고리즘 > Python' 카테고리의 다른 글
[Python | 프로그래머스] 문자열 밀기 (0) | 2023.04.25 |
---|---|
[Python | 프로그래머스] 특이한 정렬 (0) | 2023.04.25 |
[Python | SWEA] 2025. N줄덧셈 (0) | 2023.04.24 |
[Python | SWEA] 2050. 알파벳을 숫자로 변환 (0) | 2023.04.24 |
[Python | 프로그래머스] 유한소수 판별하기 (0) | 2023.04.24 |