
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
long[] dp = new long[101];
dp[1] = 1;
dp[2] = 1;
dp[3] = 1;
for (int i = 4; i <= 100; i++) {
dp[i] = dp[i - 2] + dp[i - 3];
}
int T = Integer.parseInt(br.readLine());
for (int i = 0; i < T; i++) {
int N = Integer.parseInt(br.readLine());
bw.write(String.valueOf(dp[N]));
bw.newLine();
}
bw.flush();
bw.close();
br.close();
}
}
문제만 얼핏 보고 어려워 보여서 뒤로 미뤄놨던 문제인데,
dp 스터디 후 접근해보니 큰 어려움이 없는 문제였다 ㅎㅎ
N 의 범위가 100 까지로 정해져있기 때문에, 미리 dp 배열을 만들어주고
후에 dp[N] 의 값을 출력하도록 하였다.