728x90
인프런의 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의를 수강하며 간략한 문제 설명, 예습 풀이 코드, 강의에서 설명하는 풀이 코드를 정리하고 있습니다.
- 문제 링크 : https://cote.inflearn.com/contest/10/problem/02-04
- 문제 설명 : n개 항의 피보나치 수열 출력
피보나치 수
피보나치 수는 첫째 및 둘째 항이 1이며 그 뒤의 모든 항은 바로 앞 두항의 합인 수열이다.
출처 : https://ko.wikipedia.org/wiki/%ED%94%BC%EB%B3%B4%EB%82%98%EC%B9%98_%EC%88%98
내 풀이
- for문과 배열을 사용하여 풀이
public class Main2_4 {
public static int[] solution(int n) {
int[] fibo = new int[n];
fibo[0] = 1; fibo[1] = 1;
for (int i = 2; i < n; i++) {
fibo[i] = fibo[i - 1] + fibo[i - 2];
}
return fibo;
}
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int[] fibo = solution(n);
for (int num : fibo) {
System.out.print(num + " ");
}
}
}
강의 풀이
배열을 이용한 풀이
- 내 풀이 방식과 동일하여 생략
배열을 이용하지 않는 풀이
class Main {
public void solution(int n){
int a=1, b=1, c;
System.out.print(a+" "+b+" ");
for(int i=2; i<n; i++){
c=a+b;
System.out.print(c+" ");
a=b;
b=c;
}
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n=kb.nextInt();
T.solution(n);
}
}
'알고리즘 문제풀이 > 인프런' 카테고리의 다른 글
[알고리즘] 2-9 격자판 최대합(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) (0) | 2021.05.14 |
---|---|
[알고리즘] 2-8 등수 구하기(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) (0) | 2021.05.14 |
[알고리즘] 2-7 점수계산(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) (0) | 2021.05.14 |
[알고리즘] 2-6 뒤집은 소수(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) (0) | 2021.05.13 |
[알고리즘] 2-5 소수, 에레토스테네스 체(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) (0) | 2021.05.13 |
댓글