오늘의 문제는 은행에 설치된 레이저에서 나오는 빔의 개수 라고 하지만 그 실체는 그냥 선긋기 이다.
각 은행을 정점으로 보고 인접한 row 에 있는 정점들과 모두 1:1 연결을 했을 때의 간선 개수를 세어나가면 된다.
이 문제가 왜 "medium" 레벨인지 의아해하며 통과.
function numberOfBeams(bankRows: string[]): number {
let sum = 0;
let target = 0;
bankRows.forEach(row => {
let count = 0;
for (let i = 0; i < row.length; i++) {
if (row[i] === '1') {
count++;
}
}
if (count !== 0) {
if (target !== 0) {
sum += target * count;
}
target = count;
}
})
return sum;
};
