(紀中)2173 無根樹 tree SPFA

2021-10-03 09:53:04 字數 1921 閱讀 8155

(file io): input:tree.in output:tree.out

時間限制: 1000 ms 空間限制: 131072 kb 具體限制

goto problemset

題目描述

味味最近對樹很感興趣,什麼是樹呢?樹就是有n

nn個點和n−1

n-1n−

1條邊形成的無環連通無向圖。

今年2012

2012

2012

年浙江省隊選拔賽中味味發現了乙個樹中最長鏈(就是樹當中距離最遠的點對)試題,於是她著手對樹進行了一些研究和思考。

味味在研究過程中想知道,對於乙個無根樹,當節點i作為根的時候樹的高是多少。所謂樹高指的是從根節點出發,到離根節點最遠葉子節點所經過的節點的總數,詳見輸入輸出樣例111。

味味現在遇到了一些煩心的事情,不想再繼續思考了,請你幫助她解決這個問題。

輸入

輸入檔名為 tre

e.in

tree.in

tree.i

n,共 n

nn 行。第一行為乙個正整數 n

nn,表示樹的節點個數。第2

22 行到第 n行裡,每行兩個用空格隔開的正整數a

aa 和b

bb,表示a

aa 與b

bb有連邊。

輸出

輸出檔案tre

e.ou

ttree.out

tree.o

ut共n

nn 行,第i行表示以節點i為根時的樹高。

樣例輸入

【樣例輸入1】

31 2

2 3【樣例輸入2】

41 4

2 43 4

樣例輸出

【樣例輸出1】32

3【樣例輸出2】33

32資料範圍限制

對於30

3030

%的資料有 n

≤100

n≤ 100

n≤100。

對於60

6060

%的資料有 n

≤300

n≤ 300

n≤300。

對於100

10010

0%的資料有 1≤n

≤1000,1

≤a,b

≤n

1≤n≤1000,1≤a,b≤n

1≤n≤10

00,1

≤a,b

≤n提示

解題思路

可以用spf

aspfa

spfa

來做這道題

**

#include

#include

#include

#include

#include

#include

#include

using namespace std;

long long n,a1,b,l,head[

1010

],q[

10100

],v[

10100

],h,t,ans,dis[

10010];

struct ca[

10010];

void

add(int x,int y)

void

bfs(int s)}}

}int main()

for(int i=

1;i<=n;i++

)}

開花 紀中1742 線段樹

description 在遙遠的火星上,上面的植物非常奇怪,都是長方形的,每個植物用三個數來描述 左邊界l 右邊界r以及高度h,如下圖所示描述乙個植物 l 2,r 5和h 4。每天都有乙個新植物長出來,第一天的植物高度為1,後面每天長出的植物比前一天的高1。當乙個新植物長出來的時候,跟其他植物的水平...

開花 紀中 1435 線段樹

在遙遠的火星上,上面的植物非常奇怪,都是長方形的,每個植物用三個數來描述 左邊界l 右邊界r以及高度h,如下圖所示描述乙個植物 l 2,r 5和h 4。每天都有乙個新植物長出來,第一天的植物高度為1,後面每天長出的植物比前一天的高1。當乙個新植物長出來的時候,跟其他植物的水平線段相交處會長出一朵小花...

2017紀中10 24 合影 樹型DP 組合數學

題面 因為每個人只有乙個要求,假如a要求在b左邊,a就向b連一條邊的話,就是乙個帶環樹。當然,有環直接無解。所以剩下的是森林。我們把子樹看成乙個子問題,假如知道了子樹內部的答案如何轉移到父親。設當前轉移x,x的所有子樹都應該安排在x左邊,也就是首先有size x 1個空來安排,每安排乙個子樹剩下的空...