Pagini recente » Cod sursa (job #1995077) | Cod sursa (job #1099942) | Cod sursa (job #261977) | Cod sursa (job #2262996) | Cod sursa (job #248692)
Cod sursa(job #248692)
type lista=^element;
element=record
a:lista;
i:longint;
end;
var p:lista;
n,m,i,a,b:longint;
ok:boolean;
v:array[1..10000] of lista;
vv:array[1..10000] of longint;
procedure euler(nod:longint);
var w:lista;
q:longint;
begin
w:=v[nod];
while w<>nil do
begin
if w^.i<>-1 then
begin
q:=w^.i;
w^.i:=-1;
euler(q);
end;
w:=w^.a;
end;
write(nod,' ');
end;
begin
assign(input,'ciclueul.in'); reset(input);
assign(output,'ciclueul.out'); rewrite(output);
readln(n,m);
for i:=1 to n do v[i]:=nil;
for i:=1 to m do
begin
readln(a,b);
if a<>b then
begin
inc(vv[a]); inc(vv[b]);
new(p);
p^.i:=b;
p^.a:=v[a];
v[a]:=p;
new(p);
p^.i:=a;
p^.a:=v[b];
v[b]:=p;
end;
end;
ok:=true;
for i:=1 to n do if vv[i] mod 2=1 then ok:=false;
if not ok then writeln('-1')
else
begin
euler(a);
end;
close(input); close(output);
end.