オラロを探す(図論アルゴリズム)
2792 ワード
Description
図に1つの筆画が存在する場合、1つの筆画の経路をオラロードと呼ぶ
Input
第1行n,mには、n個の点、m個のエッジがあり、以下に、各エッジが接続されている2点を説明する.
Output
オラかオラ帰り道
Sample Input
図に1つの筆画が存在する場合、1つの筆画の経路をオラロードと呼ぶ
Input
第1行n,mには、n個の点、m個のエッジがあり、以下に、各エッジが接続されている2点を説明する.
Output
オラかオラ帰り道
Sample Input
Sample Output
, , , , , , 。
:
const
maxn=100;
var
g:array[1..maxn,1..maxn]of longint;
du,circuit:array[1..maxn]of longint;
n,e,circuitpos,i,j,x,y,start:longint;
procedure find_circuit(i:longint);
var
j:longint;
begin
for j:=1 to n do
if g[i,j]=1 then begin g[i,j]:=0; g[j,i]:=0; find_circuit(j); end;
inc(circuitpos);
circuit[circuitpos]:=i;
end;
begin
fillchar(g,sizeof(g),0);
readln(n,e);
for i:=1 to e do
begin
readln(x,y);
g[x,y]:=1;
g[y,x]:=1;
inc(du[x]);
inc(du[y]);
end;
start:=1;
for i:=1 to n do
if du[i] mod 2=1 then start:=i;
circuitpos:=0;
find_circuit(start);
for i:=1 to circuitpos do
write(circuit[i],' ');
writeln;
end.
: http://blog.sina.com.cn/s/blog_83ac6af80102v0sk.html
。