Pingpang Balls

在雙魚的乒乓球上一般都會標有三星,二星,或者一星的字樣,星級越高就表示球的質量越好。

星級的評定和球的重量,直徑,硬度等很多因素有關,不過在這裏,我們只考慮球的重量對星級評定產生的影響。

乒乓球有一個標準的重量S,如果球的重量和標準越接近,星級就會越高。具體來講,對於球的重量和S的差的絕對值,如果小於或等於D1,那麼這個球就會被標爲三星,如果大於D1且小於或等於D2,那麼就會被標爲二星,如果大於D2且小於或等於D3就會被標爲一星,如果大於D3則不對其標星(D1 < D2 < D3)。

現在給你N個乒乓球,你需要計算其中各個星級的乒乓球各有多少個。

Input

輸入的第一行包含一個整數T (1 <= T <= 20),表示接下來一共有T組測試數據。

對於每組數據,第一行包含5個整數N (1 <= N <= 10), S (1 <= S <= 20), D1, D2, D3 (1 <= D1 < D2 < D3 <= 20),含義同上。接下來一行包含N個不大於20的正整數,依次描述了各個乒乓球的重量。

Output

對於每組數據,用一行輸出三個整數,中間用空格隔開,分別表示N個球中三星,二星和一星的球各有多少個。

Sample Input
2
5 10 1 2 3
6 7 9 9 10
6 10 1 2 3
11 12 12 13 14 8
Sample Output
3 0 1
1 3 1	
水題。。。。
#include<iostream>
#include<stdlib.h>
using namespace std;
int main()
{
	int T,n,s,d1,d2,d3,i,a[4],b,c;
	cin>>T;
	while (T--)
	{
		for (i=1;i<4;i++) a[i]=0;
		cin>>n>>s>>d1>>d2>>d3;
		for (i=1;i<=n;i++)
		{
			cin>>b;
			c=abs(s-b);
			if (c<=d1) a[1]++;
			else if (c<=d2) a[2]++;
			else if (c<=d3) a[3]++;
		}
		cout<<a[1]<<' '<<a[2]<<' '<<a[3]<<endl;
	}
	return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章