백준
백준 동적계획법 - 9461번 : 파도반 수열
맴썰
2022. 2. 16. 22:34
https://www.acmicpc.net/problem/9461
import java.io.*;
import java.util.*;
public class Main {
public static long[] memo = new long[101];
public static void main(String[] args) throws IOException{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
memo[0] = 1;
memo[1] = 1;
memo[2] = 1;
memo[3] = 2;
memo[4] = 2;
memo[5] = 3;
for(int i=0; i<n; i++) {
st = new StringTokenizer(br.readLine());
int a = Integer.parseInt(st.nextToken());
System.out.println(func(a-1));
}
}
static long func(int a) {
if(a<5) return memo[a];
if(memo[a]==0) {
memo[a] = func(a-5)+func(a-1);
}
return memo[a];
}
}