[프로그래머스] 42883. 큰 수 만들기

최대 1 분 소요

문제 링크

[프로그래머스] 42883. 큰 수 만들기


풀이 과정

number : 1924
k : 2

두 값의 비교를 통해 target 인덱스를 결정하지 못하면, 내림차순으로 정리되어있다는 의미이므로, 가장 작은 수인 맨 뒤 숫자를 제거합니다.


코드

public class Main {
    public static String solution(String number, int k) {
        StringBuilder sb = new StringBuilder(number);

        int K = k;
        for (k = 0; k < K; k++) {
            int target = sb.length() - 1;
            for (int idx = 0; idx < sb.length() - 1; idx++) {
                if (sb.charAt(idx) < sb.charAt(idx + 1)) {
                    target = idx;
                    break;
                }
            }

            sb.deleteCharAt(target);
        }

        return sb.toString();
    }

    public static void main(String[] args) {
        String number = "1924";
        int k = 2;
//        String number = "1231234";
//        int k =3;
//        String number = "4177252841";
//        int k =4;

        System.out.println(solution(number, k));

    }
}

카테고리:

업데이트:

댓글남기기