浙大PAT甲级-1012

来源:互联网 发布:网站数据抓取 编辑:程序博客网 时间:2024/06/04 21:10

这题没什么意思

#include <iostream>#include <vector>using namespace std;int main(){    vector<string> id, idc;    vector<int> C, M, E, A, ranks;    int n,m,i;    cin>>n>>m;    i=n;    while(i--){        string ids;        int c,m,e,a;        cin>>ids>>c>>m>>e;        id.push_back(ids);        C.push_back(c);        M.push_back(m);        E.push_back(e);        a=(c+m+e)/3;        A.push_back(a);    }    i=m;    while(i--){        string idcs;        cin>>idcs;        idc.push_back(idcs);    }    for(i=0;i<m;i++){        int rank=n, index=-1;        for(int j=0;j<n;j++){            if(idc[i]==id[j]){                index=j;                break;            }        }        if(index==-1){            cout<<"N/A"<<endl;            continue;        }        int ci=C[index], mi=M[index], ei=E[index], ai=A[index];        int rankc=1, rankm=1, ranke=1, ranka=1;        for(int j=0;j<n;j++){            if(ci<C[j])                rankc++;            if(mi<M[j])                rankm++;            if(ei<E[j])                ranke++;            if(ai<A[j])                ranka++;        }        rank=rankc;        if(rankm<rank)            rank=rankm;        if(ranke<rank)            rank=ranke;        if(ranka<rank)            rank=ranka;        cout<<rank<<" ";        if(rank==ranka){            cout<<"A"<<endl;            continue;        }        if(rank==rankc){            cout<<"C"<<endl;            continue;        }        if(rank==rankm){            cout<<"M"<<endl;            continue;        }        if(rank==ranke){            cout<<"E"<<endl;        }    }    return 0;}