微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我的用于查找偶数斐波那契数总和的代码不适用于所有情况

如何解决我的用于查找偶数斐波那契数总和的代码不适用于所有情况

输入格式:第一行包含 t,表示测试用例的数量。接下来是 t 行,每行包含一个整数 n。 考虑 Fibonacci 数列中值不超过 n 的项(从 1 和 2 开始),求偶数值项的总和。 斐波那契项=1,2,3,5,8,13....

我的代码如下:

#include <iostream>
using namespace std;
int main()
{
    int i,j,s = 2,c = 0,t;
    cin >> t;

    for (i = 0; i < t; i++)
    {
        int n,beg = 2,prev = 0;
        cin >> n;
        while ((3 * c) < n)
        {
            c = (beg * 4) + (prev);
            s = s + c;
            prev = beg;
            beg = c;
        }
        cout << s << endl;
        s = 2;
        c = 0;
    }

    return 0;
}

我的代码适用于示例,即 输入:2 10 100
输出:10 44

然而,当我将代码粘贴到hackerrank时,它显示“3个隐藏案例失败”。我自己尝试了一些输出效果很好。

请提出一些改进建议以涵盖所有极端情况。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。