poj 1658 Eva's Problem

Eva's Problem

Time Limit: 1000MS
Memory Limit: 10000K

Total Submissions: 14397
Accepted: 8705

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
  1: #include<iostream>
  2: using namespace std;
  3: int main()
  4: {
  5: 	int t;
  6: 	int in[5];
  7: 	int i,j;
  8: 	int minu;
  9: 	int divi;
 10: 	cin>>t;
 11: 	while(t--)
 12: 	{
 13: 		for(i=0;i<4;i++)
 14: 			cin>>in[i];
 15: 		minu=in[1]-in[0];
 16: 		divi=in[1]/in[0];
 17: 		for(i=0;i<3;i++)
 18: 		{
 19: 			if(minu!=(in[i+1]-in[i]))
 20: 				break;
 21: 		}
 22: 		if(i==3)
 23: 			in[4]=minu+in[3];
 24: 		for(j=0;j<3;j++)
 25: 		{
 26: 			if(divi!=(in[i+1]/in[i]))
 27: 				break;
 28: 		}
 29: 		if(j==3)
 30: 			in[4]=divi*in[3];
 31: 		for(i=0;i<5;i++)
 32: 			cout<<in[i]<<"";
 33: 		cout<<endl;
 34: 	}
 35: 	return 0;
 36: }
 37: 
posted @ 2011-11-21 21:24  w0w0  阅读(121)  评论(0编辑  收藏  举报