-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
미해결
안녕하세요 강사님 . 제 답은 왜 오답일까요?
21.07.26 01:07 작성 조회수 110
0
import java.util.*;
public class Main {
public static void main(String[] args) {
Main main = new Main();
Scanner in = new Scanner(System.in);
int n;
int[][] arr;
n = in.nextInt();
arr = new int[n][2];
for(int i=0; i<n; i++) {
for(int j=0; j<2; j++) {
arr[i][j] = in.nextInt();
}
}
int[][] result = main.solution(n, arr);
for(int i=0; i<n; i++) {
for (int j = 0; j < 2; j++) {
System.out.print(result[i][j]+" ");
}
System.out.println();
}
}
int[][] solution(int n, int[][] arr) {
int[][] result = new int[n][2];
int[] sortedX = new int[n];
for(int i=0; i< n; i++) {
sortedX[i] = arr[i][0];
}
int[] sortedY = new int[n];
for(int i=0; i< n; i++) {
sortedY[i] = arr[i][1];
}
Arrays.sort(sortedX);
Arrays.sort(sortedY);
for(int i=0; i<n; i++) {
result[i][0] = sortedX[i];
result[i][1] = sortedY[i];
}
return result;
}
}
답변을 작성해보세요.
0
김태원
지식공유자2021.07.27
안녕하세요^^
X좌표와 Y자표를 각자 따로 정렬한 다음에 그 결과의 순서대로 다시 짝을 지으면 원래 짝이었던 숫자끼리 헤어지는 결과가 나옵니다.
문제의 입력으로 보면 (2, 7)과 (3, 6)이 위 코드 대로 하면 (2, 6), (3, 7) 로 어뚱한 좌표가 되어 버립니다.
답변 1