演算法學習之路 互評成績計算

2021-09-20 22:26:25 字數 1086 閱讀 4172

在浙大的計算機專業課中,經常有互評分組報告這個環節。乙個組上台介紹自己的工作,其他組在台下為其表現評分。最後這個組的互評成績是這樣計算的:所有其他組的評分中,去掉乙個最高分和乙個最低分,剩下的分數取平均分記為 g1;老師給這個組的評分記為 g2。該組得分為 (g1+g2)/2,最後結果四捨五入後保留整數分。本題就要求你寫個程式幫助老師計算每個組的互評成績。

輸入格式

輸入第一行給出兩個正整數n(> 3)和m,分別是分組數和滿分,均不超過100。隨後n行,每行給出該組得到的n個分數(均保證為整型範圍內的整數),其中第1個是老師給出的評分,後面 n-1 個是其他組給的評分。合法的輸入應該是[0, m]區間內的整數,若不在合法區間內,則該分數須被忽略。題目保證老師的評分都是合法的,並且每個組至少會有3個來自同學的合法評分。

輸出格式

為每個組輸出其最終得分。每個得分佔一行。

輸入樣例:

6 50

42 49 49 35 38 41

36 51 50 28 -1 30

40 36 41 33 47 49

30 250 -25 27 45 31

48 0 0 50 50 1234

43 41 36 29 42 29

輸出樣例:

4233

4131

3739

解題思路

1.將老師的成績單獨提出來,在將後面的資料去掉不符合範圍內的。

2.去掉屬於範圍內的最大最小值。

3.四捨五入即原本的值+0.5,然後直接int()強轉即可。

#include#include#include#includeusing namespace std;

int main()

sort(stu.begin(), stu.end());

int count=0;

for(int i=1;iprintf("%d\n",int((sum/count+techer)/2+0.5));

sum=0;

stu.clear();

}}

1077 互評成績計算

1077 互評成績計算 20 分 在浙大的計算機專業課中,經常有互評分組報告這個環節。乙個組上台介紹自己的工作,其他組在台下為其表現評分。最後這個組的互評成績是這樣計算的 所有其他組的評分中,去掉乙個最高分和乙個最低分,剩下的分數取平均分記為 g 1 老師給這個組的評分記為 g 2 該組得分為 g ...

1077 互評成績計算

在浙大的計算機專業課中,經常有互評分組報告這個環節。乙個組上台介紹自己的工作,其他組在台下為其表現評分。最後這個組的互評成績是這樣計算的 所有其他組的評分中,去掉乙個最高分和乙個最低分,剩下的分數取平均分記為 g 1 老師給這個組的評分記為 g 2 該組得分為 g 1 g 2 2,最後結果四捨五入後...

1077 互評成績計算

題目鏈結 題目不難,關鍵在於四捨五入這一快需要注意,我利用printf的四捨五入錯了,似乎是不能用還是不準確?改了才對 未ac pragma warning disable 4996 include include include include include using namespace st...