연결 컴포넌트(DFS)
Description
그림의 연결 분량을 구하다
Input
n 톱 포인트 수(<=100) 모서리
Output
연통분량
Sample Input
5 1 2 3 4 2 3 0 0
Sample Output
4
저자의 사고방식: dfs, 한 점부터 검색하면 s>ans then ans:=s;이 문제는 입력이 지독하구나!
코드:
var a:array[0..101,0..101] of shortint;
ans,n,s,i:longint;
f:array[0..101] of boolean;
procedure init;
var i,j,x,y:longint;
begin
read(n);
{for i:=1 to n-1 do
begin
read(x,y);
a[x,y]:=1;
a[y,x]:=1;
end;}
while (x<>0)and(y<>0) do
begin
read(x,y);
a[x,y]:=1;
a[y,x]:=1;
end;
fillchar(f,sizeof(f),true);
end;
procedure dfs(x:longint);
var i:longint;
begin
for i:=1 to n do
if (i<>x)and(a[x,i]=1)and f[i] then
begin
inc(s); if ansthen ans:=s;
f[i]:=false; f[x]:=false;
dfs(i);
end;
end;
begin
init;
ans:=1;
for i:=1 to n do
if f[i] then
begin
s:=1;
dfs(i);
if s>ans then ans:=s;
end;
write(ans);
end.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
49일차 - 2022.04.20Baekjoon에서 문제풀이 1) 문제 : 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제/ 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 첫째 줄부터 N번째 줄까지 차례대로 별...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.