1) 피보나키 수열을 출력한다. 피보나치 수열이란 앞의 2개의 수를 합하여 다음 숫자가 되는 수열이다.
2) 입력은 피보나치 수열의 총 항의 수 이다. 만약 7이 입력되면 1 1 2 3 5 8 13을 출력하면 된다.
public class Fibonacci {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int input1 = in.nextInt();
solution(input1);
}
public static void solution(int input1){
int[] arr = new int[input1];
arr[0] = 1;
arr[1] = 1;
for(int i=2; i<input1; i++){
arr[i] = arr[i-2] + arr[i-1];
}
for(int i : arr){
System.out.print(i+" ");
}
}
}
보통 재귀로 많이 푸는데 강의 순서 상 배열로 풀어볼 수 있었다. 제한사항으로는 입력되는 값은 무조건 3보다 큰 수가 입력되므로 따로 유효성 검사를 할 필요는 없었고 피보나치 배열의 특성상 0과 1은 무조건 1이 들어가기 때문에 초기 배열의 값을 1,1 고정값을 넣은 후 반복문을 돌리면 끝난다.
재귀로도 풀수 있어야한다!