문제 설명
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 |
정수 n이 매개변수로 주어질 때, n을 3x 마을에서 사용하는 숫자로 바꿔 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ n ≤ 100
입출력 예
n | result |
15 | 25 |
40 | 76 |
입출력 예 설명
입출력 예 #1
- 15를 3x 마을의 숫자로 변환하면 25입니다.
입출력 예 #2
- 40을 3x 마을의 숫자로 변환하면 76입니다.
function solution(n) {
let arr = [];
let num = 1;
while (arr.length < n) {
if (num % 3 !== 0 && !num.toString().includes('3')) {
arr.push(num);
}
num += 1;
}
return arr[arr.length - 1];
}
1부터 n-1만큼 반복.
num이 3의 배수가 아니고 num에 3의 숫자가 포함되어 있지 않으면 배열에 추가
반복될때마다 num의 숫자는 1씩 증가
반복이 끝나면 마지막 인덱스의 요소를 리턴.
https://school.programmers.co.kr/learn/courses/30/lessons/120871
'study > Algorithm' 카테고리의 다른 글
[Algorithm] 이진탐색 (0) | 2023.03.24 |
---|---|
[프로그래머스] 문자열 밀기 (0) | 2023.03.23 |
[Algorithm] orderOfPresentation (0) | 2023.03.22 |
[프로그래머스] 특이한 정렬 (0) | 2023.03.21 |
[프로그래머스] 유한소수 판별하기 (0) | 2023.03.20 |