rt.
写P7212的时候被set合并卡炸了。
以下是我所使用的set合并算法:
void cnnt_merge(long long ta,long long tb)
{
for(set<long long>::iterator it=cnnt[ta].begin();it!=cnnt[ta].end();it++)
{
if(ffind(*it)!=tb)
{
cnnt[tb].insert(*it);
}
}
for(set<long long>::iterator it=cnnt[tb].begin();it!=cnnt[tb].end();)
{
if(ffind(*it)==tb)
{
cnnt[tb].erase(it++);
}
else
{
it++;
}
}
return;
}
求问一下这个set合并算法是否为最优解,如果不是,有没有什么好的优化方法(比如卡常什么的
谢谢了。