P5266 【深基17.例6】学籍管理(map)


首先要注意score的范围,所以要用long long int,其次OK两个字母都是大写,并且插入和修改后都要输出Ok

#include<iostream>
#include<set>
#include<map>
#define int long long
using namespace std;
signed main() {
	map<string, int>mapstudent;
	int n;
	cin >> n;
	while (n--) {
		int op;
		cin >> op;
		if (op == 1) {
			int score;
			string name;
			cin >> name >> score;
			auto it=mapstudent.find(name);
			if (it == mapstudent.end())mapstudent.insert(pair<string, int>(name, score)), cout << "OK" << endl;
			else it->second = score,cout<<"OK"<<endl;
		}
		if (op == 2) {
			string name;
			cin >> name;
			auto it = mapstudent.find(name);
			if (it == mapstudent.end())cout << "Not found" << endl;
			else cout << it->second << endl;
		}
		if (op == 3) {
			string name;
			cin >> name;
			auto it = mapstudent.find(name);
			if (it == mapstudent.end())cout << "Not found" << endl;
			else {
				mapstudent.erase(it);
				cout << "Deleted successfully" << endl;
			}
		}
		if (op == 4)cout << mapstudent.size() << endl;
	}
	return 0;
}
posted @   郭轩均  阅读(1)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示