豆脚的c++答案

泥嚎  •  1个月前


include

using namespace std;

const int MOD = 100000007; // 取模常数

int main() {

int n;
cin >> n;

// 处理前两项的特殊情况
if (n == 1 || n == 2) {
    cout << 1 << endl;
    return 0;
}

// 迭代计算斐波那契数列,同时取模
long long a = 1; // f(1)
long long b = 1; // f(2)
long long c;     // 用于存储当前计算的项

for (int i = 3; i <= n; i++) {
    c = (a + b) % MOD; // 计算当前项并取模
    a = b;             // 移动指针
    b = c;
}

cout << b << endl;
return 0;

}


评论:

请先登录,才能进行评论