POJ 1658 Eva's Problem

Time Limit: 1000MS   Memory Limit: 10000K
Total Submissions: 17778   Accepted: 10871

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

CODE:
#include <iostream>
#include <cstdio>
#include <cstring>
#define REP(i, s, n) for(int i = s; i <= n; i ++)
#define REP_(i, s, n) for(int i = n; i >= s; i --)

using namespace std;

int main(){
    int T, a, b, c, d;
    scanf("%d", &T);
    while(T --){
        scanf("%d%d%d%d", &a, &b, &c, &d);
        if(d - c == c - b) printf("%d %d %d %d %d\n", a, b, c, d, d + (d - c));
        else if(d / c == c / b) printf("%d %d %d %d %d\n", a, b, c, d, d * (d / c));
    }
    return 0;
}
        

 

 
posted @ 2015-05-28 07:49  ALXPCUN  阅读(164)  评论(0编辑  收藏  举报