星級的評定和球的重量,直徑,硬度等很多因素有關,不過在這裏,我們只考慮球的重量對星級評定產生的影響。
乒乓球有一個標準的重量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的正整數,依次描述了各個乒乓球的重量。
對於每組數據,用一行輸出三個整數,中間用空格隔開,分別表示N個球中三星,二星和一星的球各有多少個。
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;
}