void CreateUDG(AMGraph& G)
{
G.vexnum = 0;
G.arcnum = 0;
int z,x,c,q=0;
while (1) {
scanf("%d", &c);
if (c==-1)
break;
G.vexs[q] =c;
G.vexnum++;
q++;
}
while (1) {
scanf("%d %d",&z,&x);
if (z ==-1 && x== -1)
break;
G.arcs[z][x] =1;
G.arcs[x][z] =1;
G.arcnum++;
}
}
int DFS(AMGraph G, int v)
{
if (visited[v] ==1)
{
return 0;
}
if (G.vexs[v] == 0)printf("0 ");
visited[v] = 1;
int w = G.vexs[v];
int q=0;
for (q=0; q < G.vexnum;q++) {
if (G.arcs[v][q]== 1) {
if(visited[q] == 0) {
printf("%d ", G.vexs[q]);
w+= DFS(G, q);
}
}
}
return w;
}