Răspuns:
if(p==1&&E[a]!=E[b])
{
for(int j=1;j<=n;j++)
if(E[j]==E[b]) E[j]=E[a];
}
if(p==1&&E[a]!=E[b])
{
g=E[b];
for(int j=1;j<=n;j++)
if(E[j]==g) E[j]=E[a];
}
Explicație:
Daca nu salvezi E[b] in alta variabila o sa il inlocuiesti E[b] cu E[a] in acel for cu j si dupa o sa continui sa compari cu valoarea lui E[a].