2차원 좌표 평면에 변이 축과 평행한 직사각형이 있습니다. 직사각형 네 꼭짓점의 좌표 [[x1, y1], [x2, y2], [x3, y3], [x4, y4]]가 담겨있는 배열 dots가 매개변수로 주어질 때, 직사각형의 넓이를 return 하도록 solution 함수를 완성해보세요.
dots의 길이 = 4
dots의 원소의 길이 = 2
-256 < dots[i]의 원소 < 256
잘못된 입력은 주어지지 않습니다.
가로와 세로의 길이만 구하면 그 길이값을 곱해서 넓이 구할수 있는데
2차원에서 배열값들의 길이를 size로 구하면 되나? length인가
class Solution {
public int solution(int[][] dots) {
int answer = 0;
//x값의 길이 = x최댓값 - x최솟값
//y값의 길이 = y최댓값 - y최솟값
int minX = dots[0][0];
int maxX = dots[0][0];
int minY = dots[0][1];
int maxY = dots[0][1];
for(int i = 1 ; i < dots.length ; i++){
minX = Math.min(minX, dots[i][0]);
maxX = Math.max(maxX, dots[i][0]);
minY = Math.min(minY, dots[i][1]);
maxY = Math.max(maxY, dots[i][1]);
}
answer = (maxX - minX)*(maxY-minY);
return answer;
}
}
다른 사람들 풀이 보니까 점과 점사이의 거리를 구하는 공식을 사용해서 하기도 하던데 그렇게 되면 제곱까지 사용을 해야해서... 일단은 변의 길이를 구해서 넓이 구하는 방식으로 계산했다. 2차원 배열에서 [첫번째][두번째]두번째 값이 각각 x값과 y값을 나타내는 좌표를 말하는건 이해를 했는데 왜 첫번째 배열의 값이 변하면서 구해지는걸까.. 좌표상에서 바뀌는걸 말하는건가?