[백준 2563] 냅다 시작 Day9 - 2차원 배열

김민지·2023년 1월 5일
0

냅다 시작 백준

목록 보기
22/118

[백준 2563] 2차원 배열 3단계. 색종이

✨ 문제 ✨

= 입력 =

첫째 줄에 색종이의 수가 주어진다. 이어 둘째 줄부터 한 줄에 하나씩 색종이를 붙인 위치가 주어진다. 색종이를 붙인 위치는 두 개의 자연수로 주어지는데 첫 번째 자연수는 색종이의 왼쪽 변과 도화지의 왼쪽 변 사이의 거리이고, 두 번째 자연수는 색종이의 아래쪽 변과 도화지의 아래쪽 변 사이의 거리이다. 색종이의 수는 100 이하이며, 색종이가 도화지 밖으로 나가는 경우는 없다

= 출력 =

첫째 줄에 색종이가 붙은 검은 영역의 넓이를 출력한다.

= 예제 입력 1 =

3
3 7
15 7
5 2

= 예제 출력 1 =

260

✨ 정답 ✨

// const { json } = require("express/lib/response");
// const fs = require("fs");
// const filePath = process.platform === "linux" ? "/dev/stdin" : "./예제.txt";
// let input = fs.readFileSync(filePath).toString().split("\n");
const input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');

let array1 = Array.from(Array(100), () => Array(100).fill(0))

let papers = parseInt(input[0])
// console.log('papers', papers)
let answer=0;

for (let i = 1; i < papers+1; i++) {
    let x=parseInt(input[i].split(' ')[0].trim())
    let y=parseInt(input[i].split(' ')[1].trim())
    
    
    for (let j = x; j < (x + 10); j++) {
        for (let k = y; k < (y + 10); k++) {
            array1[j][k] = 1;
        }
    }
}
// console.log(array1)
for (let i=0;i<100;i++){
    answer+=array1[i].filter(element=>element===1).length
}
console.log(answer)

💡💡 기억해야 할 점

  1. 예전에 재수할 때 수학 선생님께서 강조하셨던 건데, 등호 유무 조심하라고.
profile
이건 대체 어떻게 만든 거지?

0개의 댓글