[boj node.js] 8393번 합 javascript

V·2021년 10월 24일
0
post-thumbnail

문제
n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오.

입력
첫째 줄에 n (1 ≤ n ≤ 10,000)이 주어진다.

출력
1부터 n까지 합을 출력한다.

예제 입력 1
3
예제 출력 1
6

풀이

const fs = require('fs');
const input = fs.readFileSync('dev/stdin').toString();
const n = +input;
let sum = 0;
for (i = 0 ; i < n+1 ; i++) {
    sum += i;
}
console.log(sum);
  • 변수를 선언 해 두고 for 문 안에서 계속 더하여 마지막에 출력했다.
const fs = require('fs');
const n = fs.readFileSync('dev/stdin').toString()*1;
let array = [n];
for(i=0;i<n;i++){ // 그냥 0부터 더해도 문제 없을 것 같아서 이렇게함.
    array.push(i);
}
const sum = array.reduce((a,b)=>a+b);
console.log(sum);

5개월 전에는 이렇게 풀었었다. 배열에 1부터 입력받은 수를 모두 넣어두고 배열의 reduce() 메소드를 사용해서 한번에 더했다. 매번 배열에 추가하는 것 보다는 간단하게 연산을 해서 for문 안에서 가산 처리를 하고 마지막에 출력하는 것이 메모리를 조금 덜 잡아먹는다는 것을 알게 되었다. 더 나은 풀이를 한 것 같다.

profile
블로그 이전중 https://sungbeen.com

0개의 댓글