1212. C++ 语法练习之 map

这里有一个盒子,现在有三个操作:

操作 1:往这个盒子里放一个字符串和对应的数字,如果盒子里已存在该字符串,就不进行任何操作。

操作 2:从这个盒子里拿走一个字符串和对应的数字,如果盒子里不存在该字符串,就不进行任何操作。

操作 3:询问当前盒子里一个字符串对应的数字。

输入

第一行包含一个整数 n \ (1 \leq n \leq 3 \cdot 10^5),代表操作的个数。

接下来的 n 行:

第一个数是 1 时,代表执行操作 1,接下来输入一个字符串 s 和一个数字 a \ (-10^8 \leq a \leq 10^8),代表放入盒子内的字符串和与该字符串对应的数字。

第一个数是 2 时,代表执行操作 2,接下来输入一个字符串 s,代表要拿走的字符串。(该字符串对应的数字也要拿走)

第一个数是 3 时,代表执行操作 3,接下来输入一个字符串 s,代表要询问的字符串。

保证所有字符串都由字母组成,且长度不超过 20

输出

对于每个操作 3,输出一行数,代表此时盒子对应该字符串的数的数值。

如果此时盒子里不存在该字符串,则输出 no

样例

标准输入 复制文本
7
1 AA 3
1 aa 0
1 ab 2
3 AA
2 AA
3 bb
3 AA
标准输出 复制文本
3
no
no
登录以提交代码。
单点时限 2 秒
内存限制 128 MB
提交 188
通过 90