출처
백준 온라인 저지
문제
N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.
첫째 줄에 숫자의 개수, 둘째 줄에 숫자 N개가 공백 없이 주어진다.
풀이
공백 없이 주어지는 N개의 숫자를 split 메서드로 나눠줍니다.
주어진 N의 숫자를 기준으로 for 문을 돌려주고 숫자를 하나씩 가져와 누적시켜준 후 출력시켜줍니다.
코드
let input = require('fs').readFileSync('/dev/stdin').toString().split('\n');
let num = Number(input[0]);
let num2 = input[1].split("");
let sum = 0;
for (let i = 0; i < num; i++) {
sum += Number(num2[i]);
}
console.log(sum);
다른 방식
N의 숫자를 split 메서드로 나눠주는 것은 똑같습니다.
하지만 for 문을 사용할 필요 없이 누적시켜주데 특화되어 있는 reduce 메서드를 사용하여 값을 누적시켜줘도 됩니다.
let input = require('fs').readFileSync('/dev/stdin').toString().split('\n');
let num = input[1].split('');
let sum = num.reduce((acc, v) => {
return acc += v * 1;
}, 0);
console.log(sum);