[传智杯 #4 初赛] 报告赋分
题目描述
花栗鼠科技大学的计算机组成原理实验最终的结课考核方式是提交一份报告。
然而作为任课老师,萝老师不希望大家过于内卷,所以指定了如下规定:
每份报告有一个卷面基础分 a a a。
在此基础上:
-
若是报告字数低于 16 16 16 页,则扣 10 10 10 分,如果分数低于 0 0 0 分了,则记作 0 0 0 分。
-
若是报告字数超过 20 20 20 页,每超过 1 1 1 页扣 1 1 1 分 ,直到分数扣到 0 0 0 分为止。
现在你知道了一份报告的卷面基础分 a a a 和它的页数 p p p ,请你计算这份报告的最终得分。我们保证 1 ≤ a ≤ 100 , 1 ≤ p ≤ 50 1 \leq a \leq 100,1 \leq p \leq 50 1≤a≤100,1≤p≤50.
输入格式
本题有多组数据。
第一行一个整数 T ( 1 ≤ T ≤ 1000 ) T(1 \leq T \leq 1000) T(1≤T≤1000) ,表示数据组数。
接下来 T T T 行,每行两个整数 a , p a,p a,p,意义如题所示。
输出格式
共 T T T 行,每行一个整数,表示该次询问的数据最终的得分。
样例 #1
样例输入 #1
2
70 17
80 10
样例输出 #1
70
70
C++实现
#include
#include
using namespace std;
int main(){
int n;
cin >>n;
int a[2]={70,17};
int p[2]={80,10};
string s;
for(int i =0;i<n;i++){
int tmp =0;
if(p[i]<16){
tmp= max(0,a[i]-10);
}
if(p[i]>20){
tmp=max(0,a[i]-p[i]+20);
}
s=s.append(" ").append(to_string(tmp));
}
cout<<s;
}
后续:
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容