정수 내림차순으로 배치하기
문제정의
숫자를 입력받아 거꾸로 출력하는 문제이다.
문제풀이
전체 코드는 다음과 같다. 숫자->문자열->정렬->문자열->숫자로 진행하였다. 총 시간복잡도는 \(O(n)\)이다.1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16import java.util.*;
public class NumDesc {
//프로그래머스 문제 풀이 level1 정수 내림차순으로 배치하기
public static void main(String[] args)
{
long n = 118372;
long answer = 0;
String s = Long.toString(n);
char[] arr = s.toCharArray();
Arrays.sort(arr);
s = new StringBuilder(new String(arr)).reverse().toString();
answer = Long.parseLong(s);
}
}
테스트
람다식을 이용하여 한줄로 끝낸 사람도 있었다. 나도 람다식에 대해 공부해 봐야겠다.