1334怎才70分??? 为啥超时???

bc03 黄金三 2022-09-08 18:28:22 2022-09-09 16:32:02 0
#include <iostream>

using namespace std;

int f(int n) {

    if (n == 1)

        return 1;

    if (n == 2)

        return 1;

    return f(n - 1) + f(n - 2);

}


int main() {

    int n;

    cin >> n;

    for (int i = 1; i <= n; i++) cout << f(i) << " ";

    return 0;

}
{{ vote && vote.total.up }}

共 1 条回复

root 站长

50次循环太多了,用递归用斐波那契数列会超时,可以用递推来求出每个斐波那契数列的数字,然后用for循环输出即可。