牛客网多校赛第一场 J Different Integers

题目链接:https://www.nowcoder.com/acm/contest/139/J

题意:给一个长为N的数组,Q个询问,询问a_1 到 a_l, a_r 到 a_N有多少个不同的数字。

思路:模板题,clone原数组成为2*N长的数组,将分开的区间询问变为连续的区间询问然后就可以套板子了。主席树被卡,后来换了树状数组就可以了。

AC代码如下:

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

using namespace std;

#define FSIO  ios::sync_with_stdio(0);cin.tie(0);
#define DEBUG(a)   cout<<"DEBUG: "<<(a)<

 

你可能感兴趣的:(ACM,高级数据结构)