[백준,BOJ 1427] 소트인사이드(JAVA 구현,재풀이)
코테/백준 온라인 저지(BOJ)

[백준,BOJ 1427] 소트인사이드(JAVA 구현,재풀이)

반응형

  이 문제 역시 이전에 풀어보았던 문제로 이전에는 정수로 데이터를 입력받은 뒤 수학적으로 각 자릿수를 추출하였지만, 이번에는 String 타입으로 데이터를 다루어 보았다. 

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

class Main {
  
  public static void main(String[] args)  {
	Scanner in = new Scanner(System.in);
	
	int n = in.nextInt(); // 데이터 입력
	ArrayList<Character> arr = new ArrayList<Character>(); // String타입의 데이터를 문자형으로 저장 할 arrayList
	
	for(int i =0;i<String.valueOf(n).length();i++) { // 데이터를 String 타입으로 변환한 뒤, 각 자리 수를 추출해 arrayList에 저장
		arr.add(String.valueOf(n).charAt(i));
	}
	
	Collections.sort(arr); // 추출한 문자형 데이터들을 정렬
    
	for(int i =arr.size()-1;i>=0;i--) { // 해당 arrayList를 역순으로 출력
		System.out.print(arr.get(i));
	}
    
  }
}

  위의 방식과 비슷하게 Collections.sort(arr, Collections.reverseOrder());과 같이 reverseOrder() 메서드를 활용해 역순으로 정렬하는 방법 또한 존재한다.

반응형