Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- gitgub actions
- 성능 개선
- 이미지 포맷 변경
- aws
- tcp
- 렌더링 과정
- SSH
- workflow
- 로드 밸런싱
- 이미지 최적화
- ec2
- 검색엔진최적화
- TLS
- nginx
- 리버스 프록시
- certbot
- 무중단
- 인증서
- SSL
- DNS
- 브라우저
- 배포
- nextJS
- 자동화
- CI
- 3-Way HandShake
- pm2
- https
- webp
- 이미지 압축
Archives
- Today
- Total
개발일기
[JavaScript] 직사각형 넓이 구하기 본문
문제설명
2차원 좌표 평면에 변이 축과 평행한 직사각형이 있습니다. 직사각형 네 꼭짓점의 좌표 [[x1, y1], [x2, y2], [x3, y3], [x4, y4]]가 담겨있는 배열 dots가 매개변수로 주어질 때, 직사각형의 넓이를 return 하도록 solution 함수를 완성해보세요.
제한사항
- dots의 길이 = 4
- dots의 원소의 길이 = 2
- -256 < dots[i]의 원소 < 256
- 잘못된 입력은 주어지지 않습니다.
입출력 예
dots | result |
[[1, 2], [2, 1], [2, 2], [1, 2]] | 1 |
[[-1, -1], [1, 1], [1, -1], [-1, 1]] | 4 |
풀이
function solution(dots) {
var answer = 0;
let xArray = []
let yArray = []
for(let i = 0; i<dots.length; i++){
xArray.push(dots[i][0])
yArray.push(dots[i][1])
}
const a = Math.max(...xArray) - Math.min(...xArray)
const b = Math.max(...yArray) - Math.min(...yArray)
return a * b;
}
풀이 설명
상상으로는 좌표가 안그려져서 직접 손으로 그려서 확인해봤다,, 확인해본 결과 두개의 변의 길이를 구하는 방법은 x좌표, y좌표의 가장 큰 값과 작은 값을 구하고, 큰 값에서 작은 값을 빼면 각각의 변의 길이가 나온다. 풀어 보자.
1. 좌표값을 구분해서 추가해 줄 2개의 배열 xArray와 yArray를 만든다.
2. for문을 활용하여 x좌표의 값과 y좌표의 값을 각각의 배열에 push() 해준다.
3. Math.max()와 Math.min()을 활용하여 큰 값과 작은 값을 구해준 뒤 계산 후 넓이를 리턴한다.
'Algorithm' 카테고리의 다른 글
[JavaScript] 캐릭터의 좌표 (0) | 2024.07.26 |
---|---|
[JavaScript] 외계어 사전 (3) | 2024.07.24 |
[JavaScript]삼각형의 완성조건 (2) (0) | 2024.07.19 |
[JavaScript] 구슬을 나누는 경우의 수 (0) | 2024.07.18 |
[JavaScript] 영어가 싫어요 (0) | 2024.07.18 |