样例能够过但是交上去0分代码
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int T;
struct Input
{
int n;
vector<int> A;
};
vector<Input> inputs;
int q;
vector<pair<int, int>> query;
int main(){
ios::sync_with_stdio(false);
cin>>T;
for(int i=1;i<=T;i++){
int tn = 0;
cin>> tn;
vector<int> tA;
for(int j=1;j<=tn;j++){
int temp;
cin>>temp;
tA.push_back(temp);
}
Input tempStruct = {
tn, tA
};
inputs.push_back(tempStruct);
}
cin>>q;
for(int i=1;i<=q;++i){
int l, r;
cin>>l>>r;
query.push_back(make_pair(l, r));
}
for(auto st : inputs){
for(auto qu : query){
auto l = qu.first;
auto r = qu.second;
vector<int> que;
for(int i=l-1; i<=r-1; i++){
auto item = st.A[i];
auto it = find(begin(que), end(que), item);
if(it == end(que)){
que.push_back(item);
}else{
que.erase(it, end(que));
}
}
cout<<que.size()<<endl;
}
}
return 0;
}
用STL+模拟直接算的, 有一个点TLE 1.2s