题意
给定一个长度为 nnn 的数组,进行 mmm 次询问。每次询问给出一个区间 [l,r][l, r][l,r],要求输出:这个区间里有多少个不同的数字。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
思路
1.1.1. 先输入数组长度 nnn 和询问次数 mmm。
2.2.2. 输入数组的 nnn 个数字,存入数组 aaa 中(从下标 111 开始存)。
3.3.3. 对于每一次询问:
∘\circ∘ 输入区间左端点 lll 和右端点 rrr。
∘\circ∘ 创建一个集合 unorderedsetunordered_setunordereds et,用来自动去重。
∘\circ∘ 把数组中从 lll 到 rrr 的所有数字插入集合。
∘\circ∘ 集合的大小 s.size()s.size()s.size() 就是区间内不同数字的个数。
4.4.4. 每次询问后输出答案。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
完整代码