问题 B: 运动会项目积分排名

题目描述

根据学校参加运动会项目的积分情况,计算每个学校所获得的总积分,按照积分高低输出学校以及学校积分。

输入格式

输入包括多行数据,每行数据依次是学校名称 项目名称 选手姓名 成绩 积分 学校总数不超过10个,学校名称、项目名称和选手姓名是字符串形式,不超过50个字符,成绩为浮点型数据,积分为整数,大于等于0,小于等于10

输出格式

按照学校获得积分降序排列,每个学校一行,输出学校名称 积分

输入样例 复制

北化 跳高 张三 1.7 7

北大 跳高 李四 1.55 3

输出样例 复制

北化 7

北大 3

分类标签

数据结构作业-绪论

#include

#include

#include

using namespace std;

int main()

{

mapmp;

string school,project,name;

float grade;

int score;

while(cin>>school>>project>>name>>grade>>score){

if(mp.find(school)==mp.end()){

mp[school]=0;

}

mp[school]+=score;

}

while(mp.size()>0){

map::iterator itMax=mp.begin();

for(map::iterator it=mp.begin();it!=mp.end();it++){

if(it->second>itMax->second){

itMax=it;

}

}

cout << itMax->first << " " << itMax->second <

mp.erase(itMax);

}

return 0;

}