第一题:公交车乘客
本题也算比较好做,在题目中就告诉了需要两个数组。我的想法是用一个temp变量来存储每站上下车后的车上人数,将最大的temp赋给sum就是我们的输出。代码如下:
#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
// insert code here...
int n; //多少站
cin>>n;
int a[n],b[n]; //下车和上车人数
int sum = 0,tmp = 0;
for (int i = 1; i <= n; i++) {
cin>>a[i]>>b[i];
}
for (int i = 1; i <= n; i++) {
tmp += (b[i] - a[i]);
if (sum < tmp) {
sum = tmp;
}
}
cout<<sum<<endl;
return 0;
}
第二题:研究生考试
这道题可以和上一题一样,通过设置4个数组来分别存政治、英语、数学和专业课,这样一个循环就可以搞定了。
代码如下:
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
int a[n],b[n],c[n],d[n];//政治、英语、数学、专业课
for (int i=0; i<n; i++) {
cin>>a[i]>>b[i]>>c[i]>>d[i];
}
for (int i=0; i<n; i++) {
int sum = a[i]+b[i]+c[i]+d[i];
if (a[i]<60||b[i]<60||c[i]<90||d[i]<90||(sum<310)) {
cout<<"Fail"<<endl;
}
else{
if (sum >= 350) {
cout<<"Gongfei"<<endl;
}
else{
cout<<"Zifei"<<endl;
}
}
}
return 0;
}

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



