[백준 JAVA] 11651번 풀이 - 좌표 정렬하기2
by mini_minpackage baekjoon;
import java.util.Arrays;
import java.util.Scanner;
/**
* 11651번 - 좌표 정렬하기 2
* 2차원 평면 위의 점 N개가 주어진다.
* 이번에는 y순으로 정렬, y가 같으면 x순으로 정렬한다.
*/
public class _11651 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[][] arr = new int[n][2];
for ( int i = 0; i < n; i++ )
{
arr[i][0] = sc.nextInt();
arr[i][1] = sc.nextInt();
}
//x값(0번째숫자)가 같은 경우, y값(1번째숫자) 비교
//그렇지 않으면 그냥 0번째 숫자 비교에서 그친다.
//****람다식 사용하는 것이 중요하군요....
Arrays.sort(arr, (arr1, arr2) -> {
if ( arr1[1] == arr2[1]) {
return arr1[0] - arr2[0];
} else {
return arr1[1] - arr2[1];
}
});
for(int i = 0; i < n; i++) {
System.out.println(arr[i][0] + " " + arr[i][1]);
}
sc.close();
}
}
이전 문제 11650번 과 동일...!!
정렬 순서를 X -> Y 로 변경해주면 된다.
'매일매일 알고리즘 공부' 카테고리의 다른 글
[백준 JAVA] 10814번 풀이 - 나이순 정렬 (0) | 2023.08.14 |
---|---|
[백준 JAVA] 1181번 풀이 - 단어 정렬 (Compare 메서드) (0) | 2023.08.13 |
[백준 JAVA] 11650번 풀이 - 좌표 정렬하기 (람다식✨) (0) | 2023.08.09 |
[백준 JAVA] 1427번 풀이 - 소트인사이드 (0) | 2023.08.08 |
[백준 JAVA] 2751번 풀이 - 수 정렬하기2 (0) | 2023.08.07 |
블로그의 정보
개발자 미니민의 개발로그
mini_min