문제
도화지위에 정사각형 영역으로 색을 칠합니다. 왼쪽 아래 모서리 기준으로 좌표가 주어집니다. 정사각형의 가로 세로의 길이는 10입니다. 도화지의 가로 세로의 길이는 100입니다. 총 몇 칸이 색이 칠해져있는지 반환합니다.
입력
2차원 배열 형태의 정사각형 정보들이 입력됩니다. [x, y]로 들어갑니다.
예시
const test_case1 = [
[1, 3],
[5, 4],
[7, 9],
];
// 출력
206
풀이
function countArea(whArray) {
const paper = Array.from(new Array(100), () => new Array(100).fill(0));
let count = 0;
whArray.forEach((e) => {
count += test2(e[0], e[1], paper);
});
return count;
}
function paintArea(w, h, paper) {
let count = 0;
for (let i = w; i < w + 10; i++) {
for (let j = h; j < h + 10; j++) {
if (!paper[i][j]) {
paper[i][j] = 1;
count++;
}
}
}
return count;
}
가로 100 세로 100인 도화지를 만들고 좌표부터 가로 10 세로 10인 정사각형으로 색을 칠합니다.
하지만 색을 칠한 부분에서는 카운트를 세면 안됩니다.
'코딩문제' 카테고리의 다른 글
진법 변환 결과 출력 (0) | 2024.04.01 |
---|---|
진법 변환 계산 (0) | 2024.03.31 |
문자열 세로 추출 (0) | 2024.03.30 |
2차원 배열의 최대 값 및 위치 찾기 (0) | 2024.03.30 |
행렬 덧셈 (0) | 2024.03.30 |