废话
我拿到题目一看,简单,种类并查集,几乎是模板。
洋洋洒洒40行代码,交上去一看36分。查错查了两年半,对着题解才找出错
36の原因
这题有个坑,就是题目没说(朋友的敌人)和(我的敌人)是(朋友)(有点绕)。
所以在处理朋友关系时,注意不要因为想当然,顺手将两p+n(即我的敌人) 与q+n(朋友的敌人)合并。
核心代码
if(op == 'E')
{
hb(p,q+n);
hb(p+n,q);
}
else
{
hb(p,q);
}
如何规避此类问题(写给自己的)
在写代码前想清楚每一步的意义,种类并查集比较吃语文,很多拗口的地方一定要画图理解。