题意
给定一个长度为 n 的数组,进行 m 次询问。每次询问给出一个区间 [l, r],要求输出:这个区间里有多少个不同的数字。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
思路
1.先输入数组长度 n 和询问次数 m。
2.输入数组的 n 个数字,存入数组 a 中(从下标 1 开始存)。
3.对于每一次询问:
输入区间左端点 l 和右端点 r。
创建一个集合 unordered_set,用来自动去重。
把数组中从 l 到 r 的所有数字插入集合。
集合的大小 s.size() 就是区间内不同数字的个数。
4.每次询问后输出答案。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
完整代码