실버 3
https://www.acmicpc.net/problem/9095
진짜 문제 정의
주어진 N에 대해서 N을 1,2,3의 합으로 표현하는 경우의 수
가짜 문제 정의
Dy[i]=i를 1,2,3의 합으로 표현하는 경우의 수
초기값 구하기
D[1] = 1
D[2] = 2
D[3] = 4
따라서
D[4] = D[3] + D[2] + D[1]
D[i] = D[i-1] + D[i-2] + D[i-3]
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
// 9095번 1,2,3 더하기
public class boj_4_9095 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int t = Integer.parseInt(br.readLine());
int[] dp = new int[11];
dp[1] = 1;
dp[2] = 2;
dp[3] = 4;
while (t-- > 0) {
int n = Integer.parseInt(br.readLine());
for (int i = 4; i <= n; i++) {
dp[i] = dp[i - 1] + dp[i - 2] + dp[i - 3];
}
System.out.println(dp[n]);
}
}
}