백준 1427 소트인사이드
문제 정보
- 문제 출처 : 백준 Baekjoon
- 문제 번호 : 1427
- 문제 제목 : 소트인사이드
- 문제 난이도 : 실버5
- 풀이 언어 : Java
문제
주어진 숫자를 내림차순으로 정렬하는 문제
접근
Array.sort() 를 이용해 오름차순으로 정렬한 후 내림차순으로 결합해 출력했다.
풀이
- Scanner 객체를 생성하여 사용자로부터 문자열 형태의 숫자를 입력 받습니다.
- 입력 받은 문자열을 toCharArray 메소드를 사용하여 문자 배열로 변환합니다.
- Arrays.sort 메소드로 문자 배열을 오름차순으로 정렬합니다.
- StringBuilder 객체를 생성합니다.
- 배열을 역순으로 탐색하면서 StringBuilder 객체에 각 요소를 추가합니다. 이 과정으로 숫자들이 내림차순으로 정렬됩니다.
- StringBuilder 객체를 문자열로 변환하여 출력합니다.
후기
다른 정렬 알고리즘으로도 문제를 풀어볼 계획이다.
코드
Java
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String N = sc.nextLine();
char[] numbers = N.toCharArray();
Arrays.sort(numbers);
StringBuilder sb = new StringBuilder();
for (int i = numbers.length - 1; i >= 0; i--) {
sb.append(numbers[i]);
}
System.out.println(sb.toString());
}
}
Java