서론
해당 문제는 DP로 분류되어있지만 재귀용법에 대한 학습을 위해 재귀 함수를 사용하여 풀이하였습니다.
문제
문제 풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
for(int i = 0; i< num; i ++){
int N = sc.nextInt();
System.out.println(recursion(N));
}
}
private static int recursion(int n){
if(n == 1) {
return 1;
}else if(n == 2){
return 2;
}else if(n ==3) {
return 4;
}else if (n <= 0 ){
return 0;
}else{
return recursion(n-3) + recursion(n-2) + recursion(n-1);
}
}
}
반응형
'Algorithm > Problem Solving' 카테고리의 다른 글
[Java] 백준 알파벳 찾기 - 10809번 (0) | 2022.07.31 |
---|---|
[Java] 백준 문자열 반복 - 2675번 (0) | 2022.07.31 |
백준 JAVA 10870번 - 피보나치수 5 (0) | 2022.03.08 |
백준 JAVA 10872번 - 팩토리얼 (0) | 2022.03.08 |
프로그래머스 C# - 소수 만들기 (Summer/Winter Coding) (0) | 2022.02.21 |
댓글