알고리즘/DP
[JS] 백준 9059 : 1, 2, 3 더하기 - DP
이즈흐
2023. 8. 29. 00:39
https://www.acmicpc.net/problem/9095
9095번: 1, 2, 3 더하기
각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다.
www.acmicpc.net
📋풀이방법
1. 1과 2와 3으로 만드는 것이므로 일단 1, 2, 3의 숫자를 만들 수 있는 경우의 수를 수동으로 세본다.
2. 그럼 아래와 같이 나오게 된다.
3. 이후의 숫자를 다시 수동으로 적으면서 찾아보자
4. 이때 규칙이 생기는데 이전에 구했던 1, 2, 3 의 경우의 수를 이용할 수 있게 된다.
🤟내 제출
var fs = require('fs');
var inputs = fs.readFileSync('/dev/stdin').toString().split('\n').map(v=>Number(v));
var cases = inputs[0];
var arr = [0, 1, 2, 4];
for(var i=1; i<=cases; i++){
var num = inputs[i];
for(var j=4; j<=num; j++){
arr[j] = arr[j-1] + arr[j-2] + arr[j-3];
}
console.log(arr[num]);
}
728x90
반응형
LIST