[백준 1427번] 소트인사이드
[백준 1427번] 소트인사이드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | package _1월_3주차; import java.util.Scanner; import java.util.Arrays; //sort를 사용하기 위해서 임포트함 import java.util.Collections; //reverseOrder매서드를 사용해주기 위해서 임포트함 public class 백준_손수경_정답_1427 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); String strNum = String.valueOf(num); //각 자리수마다 쪼개기 위해서는 문자열로 바꾼다. String[] arrayStrNum = strNum.split(""); //문자열로 바뀐 입력값을 split을 통해서 배열로 넣어준다. Arrays.sort(arrayStrNum, Collections.reverseOrder()); for (int i = 0; i < arrayStrNum.length; i++) { System.out.print(arrayStrNum[i]); } } } | cs |
나는 입력받은 숫자를 가지고 문자열로 바꾸고 문자열로 바뀐 숫자를 .split(“”);을 활용해서 배열에 넣어준 후, Arrays.sort를 이용해서 역순으로 정렬했다. 하지만 먼저 문제의 정답을 올리신 분을 봤더니 더 간단했다. 오름차순으로 정렬을해서 인덱스를 큰수부터 출력을 한 것이었다. 이에 더 효율적인 것 같다. 그래도 여튼 백준에서 성공이라고 떴으니 일단 포스팅을 해본다,,ㅎ
댓글남기기