提交时间:2026-01-04 14:55:07
运行 ID: 79993
#include <iostream> using namespace std; int main() { int k; cin >> k; // 处理前两项 if (k == 1 || k == 2) { cout << 1 << endl; return 0; // 提前结束程序 } long long a = 1, b = 1; // 使用long long防止溢出 // 第46项是1836311903,超出int范围,所以必须用long long // 从第3项开始递推 for (int i = 3; i <= k; i++) { long long c = a + b; // 计算下一项 a = b; // 更新前两项 b = c; } cout << b << endl; // 输出第k项 return 0; }