六度分離 HDO 1869 Floyd

2021-10-04 18:46:25 字數 1033 閱讀 2116

description

2023年,美國著名的社會學家斯坦利・公尺爾格蘭姆提出了乙個名為「小世界現象(small world phenomenon)」的著名假說,大意是說,任何2個素不相識的人中間最多隻隔著6個人,即只用6個人就可以將他們聯絡在一起,因此他的理論也被稱為「六度分離」理論(six degrees of separation)。雖然公尺爾格蘭姆的理論屢屢應驗,一直也有很多社會學家對其興趣濃厚,但是在30多年的時間裡,它從來就沒有得到過嚴謹的證明,只是一種帶有傳奇色彩的假說而已。

lele對這個理論相當有興趣,於是,他在hdu裡對n個人展開了調查。他已經得到了他們之間的相識關係,現在就請你幫他驗證一下「六度分離」是否成立吧。

input

本題目包含多組測試,請處理到檔案結束。

對於每組測試,第一行包含兩個整數n,m(0output

對於每組測試,如果資料符合「六度分離」理論就在一行裡輸出"yes",否則輸出"no"。

sample input

8 70 1

1 22 3

3 44 5

5 66 7

8 80 1

1 22 3

3 44 5

5 66 7

7 0sample output

yesyes

將a,b的距離設為1 用floyd

#include

#include

#include

using namespace std;

int dis[102]

[102],inf=99999999;

void floyd(int n)}}

int main(

) floyd(n)

; for(i=0; ifor(j=0; jif(

!flag)

printf(

"yes\n");

else

printf(

"no\n");

}return 0;

}

1869六度分離

實在是太粗心了,floyd演算法中把k打成了i,找了20分鐘才找到錯.題目不難,最多用6個人就能聯絡在一起,等價於任意2點的距離不超過7 include include include using namespace std ifndef online judge include ifstream ...

c HDOJ 1869 六度分離

題目大意 求每個點的與別的點的最短路,超過6則輸出no,不超過輸出yes 只要一對頂點距離大於6,則可輸出結果,所以此題用floyd演算法 include include include includeusing namespace std int n,m int a 105 105 int min...

hdu 1869 六度分離

1967年,美國著名的社會學家斯坦利 公尺爾格蘭姆提出了乙個名為 小世界現象 small world phenomenon 的著名假說,大意是說,任何2個素不相識的人中間最多隻隔著6個人,即只用6個人就可以將他們聯絡在一起,因此他的理論也被稱為 六度分離 理論 six degrees of sepa...