BOJ 24416 알고리즘 수업 - 피보나치 수 1

1 개요[ | ]

BOJ 24416 알고리즘 수업 - 피보나치 수 1

2 C++[ | ]

// 0 ms
#include <iostream>
using namespace std;

int f[40];
int fibonacci(int n) {
    f[1] = f[2] = 1;
    for(int i=3; i<=n; i++) {
        f[i] = f[i-1]+f[i-2];
    }
    return f[n];
}

int main() {
    int n;
    cin >> n;
    cout << fibonacci(n) << ' ' << n-2;
}
// 180 ms
#include <iostream>
using namespace std;

int fib(int n) {
	if (n == 1 || n == 2) {
		return 1;
	}
	return fib(n-1)+fib(n-2);
}

int main() {
    int n;
    cin >> n;
    cout << fib(n) << ' ' << n-2;
}
// 196 ms
#include <iostream>
using namespace std;

int cnt1 = 1;
int cnt2 = 0;

int fib(int n) {
	if (n == 1 || n == 2) {
		return 1;
	}
    cnt1++;
	return fib(n-1)+fib(n-2);
}

int f[40];
int fibonacci(int n) {
    f[1] = f[2] = 1;
    for(int i=3; i<=n; i++) {
        f[i] = f[i-1]+f[i-2];
        cnt2++;
    }
    return f[n];
}

int main() {
    int n;
    cin >> n;
    fib(n);
    fibonacci(n);
    cout << cnt1 << ' ' << cnt2;
}
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}