저주의 숫자 3

저주의 숫자 3

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 함수를 완성해주세요.

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


public class Main {

    public static void main(String[] args) {

        int n = 40;

        var reuslt = solution(n);

        System.out.println(reuslt);
    }

    public static int solution(int n) {
        int result = 0;

        for (int i = 1; i <= n; i++) {
            result = next(result);

        }


        return result;
    }

    public static int next(int n) {

        outter:
        while (true) {
            n++;

            if (n % 3 == 0) {
                continue;
            }

            int temp = n;

            do {
                if (temp %10 == 3) {
                    continue outter;
                }

                temp = temp / 10;
            }while (temp > 0);

            break;
        }

        return n;
    }

}