if(s.insert(A[i]).second) 是什么意思?s 是一个集合,A 是一个向量。代码是这样的 -
int main() {
long long p,i,input;
vector<long long> A;
cin>>p;
for(i=0;i<p;i++)
{
cin>>input;
A.push_back(input);
}
long long N = A.size();
set<long long> s;
set<long long>::iterator k;
for (i=0;i<N;i++)
{
if (s.insert(A[i]).second)
{
k = s.find(A[i]);
k++;
if (k!=s.end())
s.erase(k);
}
}
cout<<s.size();
Run Code Online (Sandbox Code Playgroud)
}
提前致谢!