본문 바로가기
코딩테스트/백준

[백준/2750,1427] 수 정렬하기(오름차순 정렬) / 소트인사이드(내림차순 정렬)

by wo__ongii 2024. 9. 12.
728x90
반응형

1.  오름차순 정렬

[문제]

N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.

 

[풀이]

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

public class Main{//오름차순 정렬
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(); //갯수 받기
        int[] arr = new int[n]; //갯수 n길이 만큼 배열 생성
        for(int i=0;i<n;i++){
            arr[i] = sc.nextInt(); // 배열에 숫자 넣기
        }
        Arrays.sort(arr);
        for(int num : arr){
            System.out.println(num);
        }
    }
}

 

1.  오름차순 정렬

[문제]

배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자.

첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.

첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다.

 

[풀이]

import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;

public class Main{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String n = sc.next();
        String[] arr = n.split("");
        Arrays.sort(arr,Comparator.reverseOrder());
        
        for(String num : arr){
            System.out.print(Integer.parseInt(num));
        }
    }
}

 

 

728x90
반응형

'코딩테스트 > 백준' 카테고리의 다른 글

[백준/2178] 미로 탐색하기 (BFS)  (0) 2024.09.19
[백준/11724] 연결 요소의 개수(DFS)  (1) 2024.09.12
[백준/2164]카드2  (0) 2024.09.10
[백준/1874] 스택 수열  (1) 2024.09.10
[백준/11659] 구간 합 구하기4  (1) 2024.09.09