POJ 1658 Eva's Problem(水~)

Description
Eva的家庭作业里有很多数列填空练习。填空练习的要求是:已知数列的前四项,填出第五项。因为已经知道这些数列只可能是等差或等比数列,她决定写一个程序来完成这些练习。
Input
第一行是数列的数目t(0 <= t <= 20)。以下每行均包含四个整数,表示数列的前四项。约定数列的前五项均为不大于10^5的自然数,等比数列的比值也是自然数。
Output
对输入的每个数列,输出它的前五项。
Sample Input
2
1 2 3 4
1 2 4 8
Sample Output
1 2 3 4 5
1 2 4 8 16
Solution
水题
首先判断数列类型,然后递推输出第五项即可
Code

#include<stdio.h>

int main()
{
    int a,b,c,d,n;
    scanf("%d",&n);
    while(n)
    {
        scanf("%d%d%d%d",&a,&b,&c,&d);
        if(b-a==c-b&&c-b==d-c)//等差数列 
            printf("%d %d %d %d %d\n",a,b,c,d,2*d-c);
        else//等比数列 
            printf("%d %d %d %d %d\n",a,b,c,d,d*d/c);
        n--;
    }
}

你可能感兴趣的:(POJ 1658 Eva's Problem(水~))