문제 링크
https://www.acmicpc.net/problem/2003
풀이
const [N, M, ...arr] = require("fs").readFileSync("/dev/stdin").toString().trim().split(/\s/).map(v => +v);
let count = 0;
for (let i=0; i<N; i++) {
let sum = arr[i];
let idx = i;
while (sum < M && idx < N-1) {
idx++;
sum += arr[idx];
}
if (sum === M) count++;
}
console.log(count);
수열을 순회하면서 인접한 수열의 합이 M 이상이 될 때까지 계속 더한 값이 정확히 M일 때에만 count를 증가시켰다.
'연습장 > 백준(BOJ) 문제풀이' 카테고리의 다른 글
[백준 10974] 모든 순열 with Node.js (0) | 2021.05.25 |
---|---|
[백준 1012] 유기농 배추 with Python (0) | 2021.05.25 |
[백준 11047] 동전 0 with Python (0) | 2021.05.24 |
[백준 1260] DFS와 BFS with Python (0) | 2021.05.24 |
[백준 2847] 게임을 만든 동준이 with Node.js (0) | 2021.05.22 |