比赛 |
NOIP2015普及组练习 |
评测结果 |
AAAAAAAAAA |
题目名称 |
谁拿了最多奖学金 |
最终得分 |
100 |
用户昵称 |
Arrow |
运行时间 |
0.005 s |
代码语言 |
C++ |
内存使用 |
0.28 MiB |
提交时间 |
2015-11-05 20:32:32 |
显示代码纯文本
#include<fstream>
#include<string>
using namespace std;
int main()
{
ifstream fin("scholar.in");
ofstream fout("scholar.out");
int a,b[100][2],c,d=0,e;
struct student{
string n;
int qm;
int bj;
char gb;
char xb;
int lw;
}s[100];
fin>>a;
for(int i=0;i<a;i++)
b[i][0]=0;
for(int i=0;i<a;i++){
fin>>s[i].n>>s[i].qm>>s[i].bj>>s[i].gb>>s[i].xb>>s[i].lw;
if(s[i].qm>80&&s[i].lw>=1){
b[i][0]+=8000;}
if(s[i].qm>85&&s[i].bj>80){
b[i][0]+=4000;}
if(s[i].qm>90){
b[i][0]+=2000;}
if(s[i].qm>85&&s[i].xb=='Y'){
b[i][0]+=1000;}
if(s[i].bj>80&&s[i].gb=='Y'){
b[i][0]+=850;}
b[i][1]=i;}
for(int i=0;i<a;i++){
d=d+b[i][0];}
for(int i=0;i<a-1;i++){
for(int j=0;j<a-1-i;j++){
if(b[j][0]<b[j+1][0]){
c=b[j+1][0];b[j+1][0]=b[j][0];b[j][0]=c;
e=b[j+1][1];b[j+1][1]=b[j][1];b[j][1]=e;}}}
fout<<s[b[0][1]].n<<endl<<b[0][0]<<endl<<d<<endl;
fin.close();
fout.close();
return 0;
}