zoukankan      html  css  js  c++  java
  • 【NYOJ】[60]谁获得了最高奖学金

    这里写图片描述
    这里写图片描述

    使用的结构体储存数据
    然后直接根据条件来判断

    #include<stdio.h>
    struct per {
        char name[22];
        int q1,q2;
        char flag1,flag2;
        int n,sum;
    } stu[120];
    int main() {
        int T;
        scanf("%d",&T);
        while(T--) {
            int X;
            scanf("%d",&X);
            int maxi=0,sum=0;
            for(int i=0; i<X; i++) {
                scanf("%s %d %d %c %c %d",&stu[i].name,&stu[i].q1,&stu[i].q2,&stu[i].flag1,&stu[i].flag2,&stu[i].n);
                stu[i].sum=0;
                if(stu[i].q1>80&&stu[i].n>0)
                    stu[i].sum+=8000;
                if(stu[i].q1>85&&stu[i].q2>80)
                    stu[i].sum+=4000;
                if(stu[i].q1>90)
                    stu[i].sum+=2000;
                if(stu[i].q1>85&&stu[i].flag2=='Y')
                    stu[i].sum+=1000;
                if(stu[i].q2>80&&stu[i].flag1=='Y')
                    stu[i].sum+=850;
                sum+=stu[i].sum;
                if(stu[i].sum>stu[maxi].sum)
                    maxi=i;
            }
            printf("%s
    %d
    %d
    ",stu[maxi].name,stu[maxi].sum,sum);
        }
        return 0;
    }

    标程直接进行的判断
    -.-感觉并没有我写的清晰

    #include<iostream>
    #include<string>
    #include<algorithm>
    #include<numeric>
    using namespace std;
    int calc(int qm,int py,bool gb,bool xb,bool lw) {
        int all=0;
        if(qm>80 && lw) all+=8000;
        if(qm>85&& py>80) all+=4000;
        if(qm>90) all+=2000;
        if(xb&&qm>85) all+=1000;
        if(gb&&py>80) all+=850;
        return all;
    }
    
    int main() {
        int n;
        cin>>n;
        while(n--) {
            int m;
            cin>>m;
            int max_num=0,all=0;
            string max_stu;
            while(m--) {
                int qm,py,lw;
                string xm,gbs,xbs;
                cin>>xm>>qm>>py>>gbs>>xbs>>lw;
                bool gb=gbs=="Y",xb=xbs=="Y";
                int num=calc(qm,py,gb,xb,lw>0);
                all+=num;
                if(num>max_num) {
                    max_num=num;
                    max_stu=xm;
                }
            }
            cout<<max_stu<<endl<<max_num<<endl<<all<<endl;
        }
    }

    题目地址:【NYOJ】[60]谁获得了最高奖学金

  • 相关阅读:
    伪静态
    query 文件提交 +php后台入库
    PHP实现URL长连接转短连接方法
    通过经纬度获取所属城市信息
    PHP 学习之路1
    Linux云服务器安装tomcat
    linux下svn服务器搭建步骤
    HttpServletrequest 与HttpServletResponse总结
    HTML5基础
    Ajax相关总结
  • 原文地址:https://www.cnblogs.com/BoilTask/p/12569884.html
Copyright © 2011-2022 走看看