HM234 学号点名

HM234 学号点名

HM234 学号点名

来源: 第 234 集 map容器-查找和统计

难度: 普及-

时间限制: 1s

空间限制: 64MB

题目描述

map 按**键**查找和统计。

find(k) 返回迭代器:找到则指向那一对,解引用后可用 first 取键、second 取实值((*pos).firstpos->second 都可以);找不到则返回 end()。用“是否等于 end()”判断成败。

count(k) 按键统计个数。map 不允许重复键,结果**只能是 \(0\) 或 \(1\)**。即使再插入相同键、不同实值,后一对进不去,计数仍是 \(1\),留下的是先插入的实值。multimapcount 才可能大于 \(1\)。

先把输入键值对 insertmap。再处理若干询问:

  • F k:对键 \(k\) 做 find。找到则输出 FOUND、键和实值;否则输出 NOTFOUND
  • C k:输出 count(k)

输入格式

第一行一个整数 \(n\)。

接下来 \(n\) 行,每行两个整数 \(k\)、\(v\)。当 \(n=0\) 时没有这些行。

然后一个整数 \(q\)。

接下来 \(q\) 行,每行一个字符(FC)和一个整数。

输出格式

每个询问一行。F 找到时为 FOUND、键、实值,两两之间一个空格;找不到为 NOTFOUNDC 只输出一个整数。

样例

输入 #1

4
1 10
2 20
3 30
3 40
4
F 3
F 4
C 3
C 4

输出 #1

FOUND 3 30
NOTFOUND
1
0

输入 #2

0
2
F 1
C 1

输出 #2

NOTFOUND
0

说明

\(0 \le n \le 1000\),\(1 \le q \le 1000\),键与值的绝对值不超过 \(10^9\)。

样例 #1 后插入的 3 40 因键重复失败,find(3) 得到的实值仍是 \(30\),count(3) 仍是 \(1\)。

信息

ID
1233
难度
(无)
分类
(无)
标签
(无)
递交数
0
已通过
0
通过率
?
上传者