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...