728x90

 

 

문제설명

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

 

 

정수 n이 매개변수로 주어질 때, n을 3x 마을에서 사용하는 숫자로 바꿔 return 하도록 solution 함수를 완성해 주세요.

제한사항

  • 1 ≤ n ≤ 100

입출력 예 & 설명 

  • 입출력 예 #1
    • 15를 3x 마을의 숫자로 변환하면 25입니다.
  • 입출력 예 #2
    • 40을 3x 마을의 숫자로 변환하면 76입니다.

나의 풀이

 

풀이에 대한 설명에 앞서 제가 접근한 방식을 설명하자면 다음과 같습니다.

 

3의 배수와 숫자 3이 포함되지 않는 숫자를  arr 배열에 넣고자 접근했습니다.

 

빈 배열 arr을 만들어주고, 3의 배수가 아닌 수 3이 포함되지 않은 숫자를 문자로 변환을 하고 한 자리씩 split 하여 문자열로 만들어줍니다.

 

그리고 마지막에 한번 더 넣어주므로 -1을 하여 반환해 주었습니다.

 

처음에는 n의 범위가 1~100이기 때문에 100까지 해주었지만.

 

그러면 3의 배수와 3이 들어가는 숫자가 없어지고 3 은 49는 14(a < b)의 조건처럼 원래 값보다 큰 수가 들어가게 됩니다. 그렇기 때문에 중간에 생략된 값으로 인해 실패하기 때문에 범위를 넉넉하게 넣어주는 게 좋습니다.