本文由Jzwalliser原创,发布在CSDN平台上,遵循CC 4.0 BY-SA协议。
因此,若需转载/引用本文,请注明作者并附原文链接,且禁止删除/修改本段文字。
违者必究,谢谢配合。
个人主页:blog.csdn.net/jzwalliser
题目
[NOIP2017 普及组] 成绩
题目背景
NOIP2017 普及组 T1
题目描述
牛牛最近学习了 C++ 入门课程,这门课程的总成 绩计算方法是:
总成绩 = 作业成绩 × 20 % + 小测成绩 × 30 % + 期末考试成绩 × 50 % \text{总成绩}=\text{作业成绩}\times 20\%+\text{小测成绩}×30\%+\text{期末考试成绩} \times 50\% 总成绩=作业成绩×20%+小测成绩×30%+期末考试成绩×50%
牛牛想知道,这门课程自己最终能得到多少分。
输入格式
三个非负整数 A , B , C A,B,C A,B,C,分别表示牛牛的作业成绩、小测成绩和期末考试成绩。相邻两个数之间用一个空格隔开,三项成绩满分都是 100 100 100 分。
输出格式
一个整数,即牛牛这门课程的总成绩,满分也是 100 100 100 分。
样例 #1
样例输入 #1
100 100 80
样例输出 #1
90
样例 #2
样例输入 #2
60 90 80
样例输出 #2
79
提示
样例 1 说明
牛牛的作业成绩是 100 100 100 分,小测成绩是 100 100 100 分,期末考试成绩是 80 80 80 分,总成绩是 100 × 20 % + 100 × 30 % + 80 × 50 % = 20 + 30 + 40 = 90 100 \times 20\%+100 \times 30\%+80 \times 50\%=20+30+40=90 100×20%+100×30%+80×50%=20+30+40=90。
样例 2 说明
牛牛的作业成绩是 60 60 60 分,小测成绩是 90 90 90 分,期末考试成绩是 80 80 80 分,总成绩是 60 × 20 % + 90 × 30 % + 80 × 50 % = 12 + 27 + 40 = 79 60 \times 20\%+90 \times 30\%+80 \times 50\%=12+27+40=79 60×20%+90×30%+80×50%=12+27+40=79。
数据说明
对于 30 % 30\% 30% 的数据, A = B = 0 A=B=0 A=B=0。
对于另外 30 % 30\% 30% 的数据, A = B = 100 A=B=100 A=B=100。
对于 100 % 100\% 100% 的数据, 0 ≤ A , B , C ≤ 100 0≤A,B,C≤100 0≤A,B,C≤100 且 A , B , C A,B,C A,B,C 都是 10 10 10 的整数倍。
想法
这道题非常非常简单:输入三个数字,然后再将这三个数分别乘以一个比例,相加,最后输出。当然,有个小技巧:为了防止出现浮点数精度损失或者其它莫名其妙的问题,我们将“乘0.2”转化为“乘2除10”。
实现
- 输入三个数。
- 分别乘以一个权值。
- 输出。
题解
C++
#include<bits/stdc++.h>
using namespace std;
int a,b,c;
int main(){
cin >> a >> b >> c; //输入
cout << a * 2 / 10 + b * 3 / 10 + c * 5 / 10; //乘以相应权重并输出
return 0;
}
Python
a,b,c = input().split() #输入
a = int(a)
b = int(b)
c = int(c)
print(int(a * 2 / 10 + b * 3 / 10 + c * 5 / 10)) #乘以相应权重并输出
难度
难度:★☆☆☆☆
这道题实在是太简单了啊,直接输入数据,然后乘以权值就可以。
结尾
这道题你是怎么AC的?欢迎讨论!
标签:NOIP2017,洛谷,30,20,90,100,成绩,80,P3954 From: https://blog.csdn.net/jzwalliser/article/details/137163246