ZeroJudge A148: You Cannot Pass?!

題目敘述

題目採EOF收資料方式處理,每行第一個數字 N 為接下來所需要收的成績數量。當 N 個數字的平均值 (需使用Float/Double進行計算) 「大於」59的話就輸出「no」,反之則輸出「yes」。

範例輸入

1 60

3 0 80 75

5 61 61 61 61 55

範例輸出

no

yes

no

測資解釋

第一行的第一個數為1,代表接下來要收1個數字。因為60>59所以輸出no。

第二行的第一個數為3,接下來收的3個數字分別為 0、80、75,三個數的平均值為51.6。因為51.6沒有大於59,所以輸出yes。

第三行思路和第二行相同,五個數字的平均值為59.8,因為大於59所以輸出no。

解題程式碼如下 (僅供參考):

#include <iostream>
using namespace std;

int main() {
  float N;
  while (cin >> N)
    {
      float sum = 0;
      for (int i = 0; i<N; i++)
        {
          float tmp;
          cin >> tmp;
          sum += tmp;
        }
      if (sum/N > 59) cout << "no" << endl;
      else cout << "yes" << endl;
    }
}

留言

這個網誌中的熱門文章

ZeroJudge M933: 邏輯電路

ZeroJudge M932: 蜜蜂觀察