CCF CSP 202012-1 期末預測之安全指數
阿新 • • 發佈:2021-01-21
202012-1 期末預測之安全指數
題目背景
期末要到了,小菜同學找到了自己的好朋友頓頓,希望可以預測一下自己這學期是否會掛科。
題目描述
首先,頓頓選取了如“課堂表現”、“自習時長”、“作業得分”、“社團活動參與度”等 n 項指標作為預測的依據。
然後,頓頓根據自己平日裡對小菜的暗中觀察,以百分制給每一項指標打分,即小菜同學第 i(1≤i≤n)項指標的得分 scorei 是一個 [0,100] 範圍內的整數。
鑑於每一項指標的重要性不盡相同,頓頓用一個 [−10,10] 範圍內的整數 wi 來表示第 i(1≤i≤n)項指標的重要程度。
最後,小菜同學期末的安全指數 y 定義如下:
$$ y = \mathrm{ReLU} \left( \sum\limits_{i=1}^{n} score_i \cdot w_i \right) $$
其中 ReLU(x)=max(0,x) 是一種常見的啟用函式。
因為使用了 ReLU 函式,安全指數一定是個非負值。
如果安全指數過低(甚至為零),則說明小菜同學這學期很可能要掛科了……
已知每一項指標的重要程度 wi 和相應的得分 scorei,快來算算小菜同學期末的安全指數吧。
輸入格式
從標準輸入讀入資料。
輸入的第一行包含一個正整數 n,保證 2≤n≤105。
接下來輸入 n 行,其中第 i(1≤i≤n)行包含用空格分隔的兩個整數 wi 和 scorei,分別表示第 i 項指標的重要程度和小菜同學該項的得分。
輸出格式
輸出到標準輸出。
輸出一個非負整數 y,表示小菜同學期末的安全指數。
樣例1輸入
6
2 60
10 100
0 70
0 0
-10 50
10 60
樣例1輸出
1220
樣例1解釋
\[y = \mathrm{ReLU} \left( 1220 \right) = 1220 \]樣例2輸入
2
-10 100
-1 15
樣例2輸出
0
樣例2解釋
\[y = \mathrm{ReLU} \left( -1015 \right) = 0 \]程式碼
#include<stdio.h> int main(){ int n =0; int w,score,sum=0; scanf("%d",&n); while(n--){ scanf("%d %d",&w,&score); sum += w*score; } if (sum>0){ printf("%d", sum); }else{ printf("0"); } return 0; }