백준 SILVER 3(1, 2, 3 더하기)
-
사용 언어 : javascript
-
해결 날짜 : 2023-01-31
-
해결 방법 :
- dp를 활용해 문제 해결
- dp[n] = dp[n-1] + dp[n-2] + dp[n-3]임을 활용해
- dp[1], dp[2], dp[3]까지 값 초기화
- 4부터 입력 값까지 돌며 dp 업데이트
- dp를 활용해 문제 해결
-
회고 :
- x
-
코드
const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : '../input.txt'; const input = fs.readFileSync(filePath).toString().trim(); solution(input); function solution(props) { props = props .split('\n') .slice(1) .map((e) => +e); props.forEach((prop) => { const dp = Array.from({ length: prop + 1 }, () => 0); dp[1] = 1; dp[2] = 2; dp[3] = 4; for (let i = 4; i <= prop; i++) { dp[i] = dp[i - 3] + dp[i - 2] + dp[i - 1]; } console.log(dp[prop]); }); }
-
출처: 백준