Java 傻瓜城的奶牛

Java 傻瓜城的奶牛,java,fibonacci,Java,Fibonacci,我正在经历这个问题- 城市里的牛是有趣的动物。他们的一个 专业与生产后代有关。愚蠢的母牛 在两岁时产下第一头小牛(母牛),然后 生产其他小牛的收益(每年一头母牛) 现在农场主哈罗德想知道他一次能养多少动物 N年的结束,如果我们假设没有一头小牛死亡 最初,他只有一头母牛 输入: 第一行包含一个表示测试次数的整数T 案例。测试用例的每一行都包含一个整数N,如下所示 在问题中描述 输出: 对于每个测试用例,在新行中打印在 N年的结束 我用下面的代码解决了这个问题- public static void

我正在经历这个问题-

城市里的牛是有趣的动物。他们的一个 专业与生产后代有关。愚蠢的母牛 在两岁时产下第一头小牛(母牛),然后 生产其他小牛的收益(每年一头母牛)

现在农场主哈罗德想知道他一次能养多少动物 N年的结束,如果我们假设没有一头小牛死亡 最初,他只有一头母牛

输入:

第一行包含一个表示测试次数的整数T 案例。测试用例的每一行都包含一个整数N,如下所示 在问题中描述

输出:

对于每个测试用例,在新行中打印在 N年的结束

我用下面的代码解决了这个问题-

public static void main (String[] args)
{
    Scanner ab=new Scanner(System.in);
    int t=ab.nextInt();  //number of test cases

    for (int i=0;i<t;i++)
    {
        int n=ab.nextInt(); //years
        int arr[]=new int[n];
        arr[0]=1;
        arr[1]=2;
        if(n>2)
        {
            for(i=2;i<n;i++)
            {
                arr[i]=arr[i-1]+arr[i-2];
            }
        }
        System.out.println(arr[arr.length-1]);


     }
}
publicstaticvoidmain(字符串[]args)
{
扫描仪ab=新扫描仪(系统英寸);
int t=ab.nextInt();//测试用例数
对于(int i=0;i2)
{

对于(i=2;使用调试器对两个程序进行调试,计算出结果偏离的值。@并将两个程序的算法完全不同。。我想知道我的方法是否正确?但他们声称解决了相同的问题。你应该计算出两个解的关系。例如,你可以查看N=0,N的答案=1,N=2等。请注意,这并不能告诉你其中一个是否正确;为此,你实际上必须考虑结果是否符合你在数学上的预期。正确答案可能是1,因为只有母牛繁殖是不寻常的……我的猜测是,对于“非常大的数量”在两者之间的某个地方会有一个整数溢出。但是如果没有一个。