HM226 集合探查

HM226 集合探查

HM226 集合探查

来源: 第 226 集 set容器-查找和统计

难度: 普及-

时间限制: 1s

空间限制: 64MB

题目描述

集合用 find 查找、用 count 统计。

find(x) 返回迭代器:找到则指向该元素,解引用即可得到值;找不到则返回 end()。判断方法是把返回的迭代器与 end() 比较——相等就是没找到,不相等就是找到了。

count(x) 返回该值出现次数,类型相当于整数。set 不允许重复,因此结果**只能是 \(0\) 或 \(1\)**:再怎么重复 insert 同一个数,统计仍是 \(1\)。multiset 才可能大于 \(1\),本题只用 set

先把输入序列 insert 进集合。再处理若干询问:

  • F x:对 \(x\) 做 find。找到则输出 FOUND 和解引用得到的值;否则输出 NOTFOUND
  • C x:输出 count(x)

输入格式

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

第二行 \(n\) 个整数,按给定顺序插入。当 \(n=0\) 时本行可以是空行。

第三行一个整数 \(q\)。

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

输出格式

每个询问一行。F 找到时为 FOUND 与值,中间一个空格;找不到为 NOTFOUNDC 只输出一个整数。

样例

输入 #1

5
10 40 20 30 30
4
F 30
F 300
C 30
C 300

输出 #1

FOUND 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 插入了两个 \(30\),但 set 只留一个,因此 find(30) 成功且 count(30)=1;容器里没有 \(300\),查找落到 end(),计数为 \(0\)。

信息

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