연습장/백준(BOJ) 문제풀이

[백준 1100] 하얀 칸 with Node.js

Tesseractjh 2021. 4. 2. 23:46

문제 링크

www.acmicpc.net/problem/1100

 

1100번: 하얀 칸

체스판은 8*8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램

www.acmicpc.net

풀이

const board = require("fs").readFileSync("/dev/stdin").toString().split(/\s/);
let count = 0;
for (let i=0; i<8; i++) {
    for (let j=0; j<8; j++) {
        if ((i+j)%2 === 0 && board[i][j] === "F") count++;
    }
}
console.log(count);

짝수(0, 2, 4, 6) 번째 줄의 짝수 번째 칸, 홀수 번째 줄의 홀수 번째 칸은 흰색이다. 따라서 흰색 칸의 가로 세로 인덱스를 더한 값은 항상 짝수이다.