ALGORITHM/PROGRAMMERS

[프로그래머스] 정수 내림차순으로 배치하기

0298 2020. 11. 15. 22:17

programmers.co.kr/learn/courses/30/lessons/12933

 

코딩테스트 연습 - 정수 내림차순으로 배치하기

함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 조건 n은 1이

programmers.co.kr

2020-11-15


import java.util.Arrays;

public class Solution12933 {

	public static void main(String[] args) {
		long n = 118372;
		long answer = 0;

		String str = String.valueOf(n);
		long arr[] = new long[str.length()];
		
		for(int i = 0; i < arr.length; i++) {
			arr[i] = Character.getNumericValue(str.charAt(i));
		}
		Arrays.sort(arr);

		StringBuilder sb = new StringBuilder();
		for(int i = arr.length-1; i >= 0; i--) 
			sb.append(arr[i]);
		
		answer = Long.parseLong(sb.toString());
		System.out.println(answer);
	}
}

long -> String -> long[] -> reverse -> stringbuilder -> long.parselong