首页 > 其他分享 >P5266 【深基17.例6】学籍管理(Map)

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

时间:2024-03-23 15:29:48浏览次数:31  
标签:Map end name 17 深基 score key find cout

#include<bits/stdc++.h>
using namespace std;
map<string,string> m;
int main()
{
	int n;
	cin>>n;
	while(n--)
	{
		int a;
		string name,score;
		cin>>a;
		if(a==1)
		{
			cin>>name>>score;
			if(m.find(name)!=m.end()) m[name]=score;   //m.find(key)找不到返回m.end();
			else  m.insert(pair<string,string>(name,score));  //找到返回m的迭代器(位置)
            cout<<"OK"<<endl;
		}
		else if(a==2)
		{
			cin>>name;
			if(m.find(name)!=m.end())  cout<<m[name]<<endl;  //也可以用m.count(key)
			else cout<<"Not found"<<endl;                    //找到返回1,否则0;
		}
		else if(a==3)
		{
			cin>>name;
			if(m.find(name)!=m.end()) 
			{
				m.erase(name);         //删除
			    cout<<"Deleted successfully"<<endl;
			}
			else cout<<"Not found"<<endl;
		}
		else if(a==4)  cout<<m.size()<<endl;
	}
	return 0;
}

基础用法

键值对 pair<key,t>  key为键,t为值

  1. 定义 map<string,string>m;
  2. 插入 m.insert(pair<string,string>(key,t));
  3. 访问 m[key]   可直接用key访问
  4. 查询 m.find(key);  返回key的位置,无返回m.end().    或m.count(key)  有则返回1,无返回0 
  5. 删除 m.erase(key);
  6. 清空 m.clear();
  7. 数量 m.size();
//输出
for(auto x:m)
{
   cout<<x.first<<" "<<x.secord;
}

标签:Map,end,name,17,深基,score,key,find,cout
From: https://blog.csdn.net/Y2498378289/article/details/136954797

相关文章

  • VMWare17.5.0版本避坑,安装虚拟机后按下键盘和鼠标,界面会卡死
    问题描述在使用VMWare17.5.0版本安装ubuntu22.0.4.4的时候遇到问题。安装完成ubuntu之后,我在虚拟机中点击鼠标左键没有问题,单独按下键盘也没有问题,但是如果按下键盘的同时在按下鼠标左键就会卡住。而且100%稳定复现。具体的卡死按键:ctrl+鼠标左键alt+鼠标左键其实并不是真......
  • #17 2023.3.18
    645.loj4038「SNOI2024」树V图646.loj4039「SNOI2024」矩阵647.loj4040「SNOI2024」拉丁方648.loj4041「SNOI2024」平方数649.loj4042「SNOI2024」公交线路650.loj3903「PA2022」Palindrom651.loj3904「PA2022」WielkiZderzaczTermionów652.loj......
  • 图论基础|417. 太平洋大西洋水流问题、827.最大人工岛、127. 单词接龙
    目录417.太平洋大西洋水流问题827.最大人工岛127.单词接龙417.太平洋大西洋水流问题题目链接(opensnewwindow)有一个m×n的矩形岛屿,与太平洋和大西洋相邻。“太平洋”处于大陆的左边界和上边界,而“大西洋”处于大陆的右边界和下边界。这个岛被分割......
  • [ARC173A] Neq Number
    原题链接题解1.abcdef=1a*+ab*abc+abc*abcd+...+abcde*abcedfcode#include<bits/stdc++.h>#definelllonglongusingnamespacestd;llf[13]={0},sum[13]={0};voidsolve(){llnow;cin>>now;llpre=10;llpos=lower_bound(sum+1,sum+13,......
  • 20212217刘恒谦-Exp2 后门原理与实践
    实践过程记录使用netcat获取主机操作Shell,cron启动​ ncat即Netcat,可以收发传输层数据,由攻击者使用。cron是Linux中用于按计划执行脚本的工具,在网络对抗中让受害者连接不稳定时,重连攻击者,由受害者启动。​ 既然如此,受害者需要是Linux,否则没有cron命令,我购买了一台阿里云Ubuntu......
  • P5741 【深基7.例10】旗鼓相当的对手 - 加强版
    P5741【深基7.例10】旗鼓相当的对手-加强版【深基7.例10】旗鼓相当的对手-加强版题目描述现有\(N(N\le1000)\)名同学参加了期末考试,并且获得了每名同学的信息:姓名(不超过\(8\)个字符的字符串,没有空格)、语文、数学、英语成绩(均为不超过\(150\)的自然数)。如果某对学......
  • 2020-6-17-elementui
    安裝、Button组件、文字链接组件、Layout栅格布局、Container容器、Radio组件、CheckBox组件、Input组件、Select选择器、Switch组件、时间日期组件、Upload组件、Form表单、消息提示、表格安裝1安装到项目中在初始化好Vue项目后执行以下命令npmielement-ui-s也可以通过......
  • 2020-2-17-mongodb的使用
    下载地址、安装、启动服务、查看、创建数据库及表、新增数据、删除数据、更新数据、查询数据、索引下载地址http://dl.mongodb.org/dl/win32/x86_64下载名为mongodb-win32-x86_64-2012plus-v4.2-latest-signed.msi的文件安装点击下一步,跳过安装mangodb_compass启动服务mo......
  • EECS 1720简单线程探索
    LAB6::探索和使用鼠标事件、键事件和简单线程(计时器)先决条件-实验室1-5实验室资源:JavaAPI:https://docs.oracle.com/javase/8/docs/api/JavaSwing:https://docs.oracle.com/javase/tutorial/uiswing/components/index.html**事件/事件处理程序接口的Swing层次结构提醒。步骤1:......
  • 「POI2017」 Sabotaż
    题意给定一棵大小为\(n\)的树,树上有一个未知节点被染色。对于任意一个节点,若它的子树中被染色的比例超过实数\(x\),则它也被染色。给定整数\(k\),求出最小的\(x\),使得被染色节点最多不超过\(k\)个。分析比较明显的树形DP,可以在DFS里面求出每个节点的子树大小\(siz\)。......