zoukankan      html  css  js  c++  java
  • 算法初步——排序 A1012.The Best Rank(25)

    #include <bits/stdc++.h>
    #include<math.h>
    using namespace std;
    const int MAX_LEN = 2005;
    //const int MAX_D = 31;
    struct student{
        int id;
        int Cgrade;
        int Mgrade;
        int Egrade;
        int Agrade;
    }stu[MAX_LEN];
    int main(){
        int n,m;
        scanf("%d%d",&n,&m);
        int temp[m];
        for(int i =0;i<n;++i){
            scanf("%d",&stu[i].id);
            scanf("%d",&stu[i].Cgrade);
            scanf("%d",&stu[i].Mgrade);
            scanf("%d",&stu[i].Egrade);
            stu[i].Agrade = (stu[i].Cgrade + stu[i].Mgrade + stu[i].Egrade)/3;
        }
        for(int i = 0;i<m;++i){
            scanf("%d",&temp[i]);
        }
        int result = 0;
        int count = 1;
        int digit = 0;
        bool flag = false;
        for(int i =0;i<m;++i){
            for(int j =0;j<n;++j){
                if(temp[i] == stu[j].id){
                    digit = j;
                    flag = true;
                }
            }
            if(flag == false){
                printf("N/A
    ");
                continue;
            }
            else{
                if(stu[digit].Cgrade != stu[digit].Mgrade && stu[digit].Mgrade != stu[digit].Egrade){
                    result = max(stu[digit].Cgrade,max(stu[digit].Egrade,stu[digit].Mgrade));
                    if(result == stu[digit].Cgrade){
                        for(int k=0;k<n;++k){
                            if(stu[k].Cgrade > result){
                                count++;
                            }
                        }
                        printf("%d C
    ",count);
                        count = 1;
                        flag = false;
                        continue;
                    }   
                    if(result == stu[digit].Egrade){
                        for(int k=0;k<n;++k){
                            if(stu[k].Egrade > result){
                                count++;
                            }
                        }
                        printf("%d E
    ",count);
                        count = 1;
                        flag = false;
                        continue;
                    }  
                    if(result == stu[digit].Mgrade){
                        for(int k=0;k<n;++k){
                            if(stu[k].Mgrade > result){
                                count++;
                            }
                        }
                        printf("%d M
    ",count);
                        count = 1;
                        flag = false;
                        continue;
                    }  
                }else{
                    result = stu[digit].Agrade;
                    for(int k=0;k<n;++k){
                        if(stu[k].Agrade > result){
                            count++;
                        }
                    }
                    printf("%d A
    ",count);
                    count = 1;
                    flag = false;
                    continue;
                }
            }
        }
        system("pause");
        return 0;
    } 

  • 相关阅读:
    elment ui 日期限制
    javascript中的编码与解码
    vue3 px 转ref
    css 波浪线
    初始化css
    vue 3 的复制功能 vue-clipboard3
    二维数组转一维数组、对象数组互斥去重
    分享几个数组方法
    前端生成图形验证码
    rem自适应布局,移动版
  • 原文地址:https://www.cnblogs.com/JasonPeng1/p/12152048.html
Copyright © 2011-2022 走看看