Stay Hungry Stay Foolish

BOJ 코딩테스트/Bronze

BOJ 2752번 : 세수정렬 (Python, Java/구현/Bronze 4)

dev스카이 2024. 3. 20. 21:23
 

2752번: 세수정렬

정수 세 개가 주어진다. 이 수는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 이 수는 모두 다르다.

www.acmicpc.net


설명

정수 세 개가 주어지면, 이를 오름차순으로 정렬하여 출력해야 한다.

 

풀이

sort() 메소드를 사용

 

Solution

Java

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int[] num = new int[3];
        for(int i = 0; i < 3; i++) {
            num[i] = sc.nextInt();
        }
        Arrays.sort(num);
        for(int i = 0; i < 3; i++) {
            System.out.print(num[i] + " ");
        }
    }
}

 

Arrays.sort(배열)

  • int 배열을 인자로 전달하면 오름차순으로 정렬된다.
  • sort() 함수 내부에서 순서를 변경해주기 때문에 반환 값을 다른 변수에 할당할 필요가 없다. 즉, 원본 배열의 순서가 변경된다는 뜻이다.
  • 이 메서드를 사용하려면 java.util.*을 import 해주어야 한다.

내림차순으로 정렬하고 싶으면?

  • sort()의 인자에 추가로 Collections.reverseOrder()를 전달해야 한다.
  • 주의할 점은, 정렬할 배열이 int형이 아닌 Integer형이어야 한다. 
  • 사용 예시
Integer[] num = new Integer[3];
Arrays.sort(num, Collections.reverseOrder());

 


Python

num = list(map(int, input().split()))
print(*sorted(num))

 

Sorted(리스트)

  • 리스트를 인자로 전달하면 디폴트값인 오름차순 정렬이 된다.
  • 함수 내부에서 정렬을 해주기 때문에 결과값을 따로 저장할 필요가 없다.

내림차순으로 정렬하고 싶으면?

  • Sorted()의 인자에 추가로 reverse = True를 전달해야 한다. 
  • 사용 예시
num = [2, 1, 3]
sorted(num, reverse = True)

 

Sorted() 메서드 말고도 리스트.Sort() 함수도 있다.

  • 사용 예시
num = [2, 1, 3]
result = num.sort()

 

이 함수도 마찬가지로 내림차순으로 정렬하고 싶으면 인자로 reverse = True를 넘겨주면 된다.