본문 바로가기

알고리즘/백준

[백준] 1427 - 소트인사이드 (JAVA/ 자바)

반응형

1427번 문제(1)
1427번 문제(2)

 

char[] 배열로 하나씩 받아온다음 String[] 배열에 옮긴 후, Arrays.sort()의 Collections.reverseOrder()를 이용해 내림차순으로 만드는 방법을 사용했다.

 

Scanner를 이용한 방법

import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;

public class Main{
public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    char[] arr = sc.next().toCharArray();
    String[] list = new String[arr.length];

    for(int i=0; i<arr.length; i++){
        list[i] = Character.toString(arr[i]);
    }
    Arrays.sort(list, Collections.reverseOrder());
    for(int i=0; i<arr.length; i++){
        System.out.print(list[i]);
    }
    sc.close();
    }
}

 

BufferedReader를 이용한 방법

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Collections;
public class Main{
public static void main(String[] args)throws IOException{
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    char[] arr = br.readLine().toCharArray();
    String[] list = new String[arr.length];

    for(int i=0; i<arr.length; i++){
        list[i] = Character.toString(arr[i]);
    }
    Arrays.sort(list, Collections.reverseOrder());
    for(int i=0; i<arr.length; i++){
        System.out.print(list[i]);
    }
    br.close();
    }
}

항상 Integer.parseInt(br.readline());이라고 쓸 일만 있었는데 이번엔 문자를 받아오는 거라 쓸 일이 없었더니 뭔가 어색하다.

반응형