如果您启发式合并50pts 请检查一下对操作1的特判()
如果您像我一样智障写成了这样QwQ
if(op==1){ x=read();y=read(); if(!sz[f[x]] || x==y) continue; if(sz[f[x]]>sz[f[y]]) swap(f[x],f[y]); merge(f[x],f[y]); }
不妨试试把 !sz[f[x]] 的特判放到swap后面!