#include<stdio.h>
#include <stdlib.h>
#define size 13
void Initial(int s[]){
for(int i=0;i<size;i++)
{
s[i]=-1;
}
}
int find(int s[],int x){
while (s[x]>=0){
x=s[x];
}
return x;
}
void Union(int s[],int root1,int root2){
if(root1==root2){
return;
}else{
s[root2]=root1;
}
}
int main()
{
int s [size];
Initial (s);
s[1]=0;
s[2]=-2;
s[3]=-3;
s[4]=1;
s[5]=1;
s[6]=2;
s[7]=3;
s[8]=3;
s[9]=3;
s[10]=4;
s[11]=4;
s[12]=7;
int a=find(s,5);
int b=find(s,6);
printf("%d\n",a);
printf("%d\n",b);
Union(s,a,b);
int c=find(s,5);
int d=find(s,6);
printf("%d\n",c);
printf("%d\n",d);
return 0;
}