题目背景
期末要到了,小菜同学找到了自己的好朋友顿顿,希望可以预测一下自己这学期是否会挂科。
题目描述
首先,顿顿选取了如“课堂表现”、“自习时长”、“作业得分”、“社团活动参与度”等 项指标作为预测的依据。
然后,顿顿根据自己平日里对小菜的暗中观察,以百分制给每一项指标打分,即小菜同学第 i(1<=i<=n)i(1 <= i <= n)i(1<=i<=n)项指标的得分scoreiscore_iscorei 是一个 范围内的整数。
鉴于每一项指标的重要性不尽相同,顿顿用一个[−10,10][-10,10][−10,10]范围内的整数wiw_iwi 来表示第i(1<=i<=n)i(1 <= i <= n)i(1<=i<=n)项指标的重要程度。
最后,小菜同学期末的安全指数yyy定义如下:

其中ReLU(x)=max(0,x)\text{ReLU}(x) = \text{max}(0,x)ReLU(x)=max(0,x) 是一种常见的激活函数。
因为使用了ReLU\text{ReLU}ReLU 函数,安全指数一定是个非负值。
如果安全指数过低(甚至为零),则说明小菜同学这学期很可能要挂科了……
已知每一项指标的重要程度wiw_iwi 和相应的得分 scoreiscore_iscorei,快来算算小菜同学期末的安全指数吧。
输入格式
从标准输入读入数据。
输入的第一行包含一个正整数nnn,保证2<=n<=1052 <= n <= 10^52<=n<=105 。
接下来输入nnn行,其中第i(1<=i<=n)i(1 <= i <= n)i(1<=i<=n)行包含用空格分隔的两个整数 wiw_iwi 和 scoreiscore_iscorei,分别表示第 项指标的重要程度和小菜同学该项的得分。
输出格式
输出到标准输出。
输出一个非负整数yyy,表示小菜同学期末的安全指数。
样例1输入
6
2 60
10 100
0 70
0 0
-10 50
10 60
样例1输出
1220
样例1解释
y=ReLU(1220)=1220y = \text{ReLU(1220)} = 1220y=ReLU(1220)=1220
样例2输入
2
-10 100
-1 15
样例2输出
0
样例2解释
y=ReLU(-1015)=0y = \text{ReLU(-1015)} = 0y=ReLU(-1015)=0
我的答案
#include <iostream>
#include <algorithm>
using namespace std;
int main(){
int n;
cin >> n;
int sum = 0;
while(n--){
int w, score;
cin >> w >> score;
int current = w * score;
sum += current;
}
cout << max(0,sum) << endl;
return 0;
}
本文介绍了一种基于多项指标(课堂表现、自习时长等)和权重计算的模型,通过朋友顿顿的观察,预测小菜同学期末是否可能挂科,展示了如何利用ReLU函数计算安全指数。

291

被折叠的 条评论
为什么被折叠?



