计蒜客蓝桥杯模拟赛5 查询系统

来源:互联网 发布:手机应用程序数据备份 编辑:程序博客网 时间:2024/06/11 15:46

题目
数学老师小y 想写一个成绩查询系统,包含如下指令:
1.insert [name] [score],向系统中插入一条信息,表示名字为name的学生的数学成绩为score。
2.find [name],表示查找名字为name的学生的数学成绩。
注意有些同学可能会为了刷分多次选课,查询的时候给出最大成绩即可。学生的名字是由小写字母组成。成绩是一个 0 \ldots 1000…100 的整数。
老师找到你,想你帮他完成这个系统。
输入格式
输入若干行,每行都是insert [name] [score]或者find [name]的形式,或一行end表示输入结束。输入行数不大于 1000,每个学生名字长度不大于 20 个字符。
输出格式
对于每个查询,输出查询的学生的最高成绩,如果系统中不存在该学生,输出 -1。

思路:用map容器,进行一一对应

#include<iostream>#include<map>using namespace std;int main(){    map<string, int>mp;      string s1,s2;      int score;      while (1)      {          cin>>s1;          if(s1=="insert")          {              cin>>s2>>score;              if(score>mp[s2])                  mp[s2]=score;          }          else if(s1=="find")          {              cin>>s2;              if(mp[s2]==0)                  cout<<"-1"<<endl;              else                  cout<<mp[s2]<<endl;          }          else if(s1=="end")          {              break;          }      }      return 0;}
1 0
原创粉丝点击