問題描述
蒜頭君走在校園裡,邂逅了乙個美女,可是蒜頭君膽怯了,並沒有上前搭訕。回到宿舍的蒜頭君越想越難過,好在室友提出了乙個很好的辦法,可以通過同學的同學的同學這樣的關係,當同學的同學這樣的關係疊加到足夠大的時候,覆蓋的人群也就會足夠多,這樣就能找到這個美女了,而且蒜頭君的室友很肯定的說,最多隔 66 個人,就一定能找到這個美女,蒜頭君有點不相信了,想驗證一下室友的想法,他和室友一起對 n 個人展開了調查,得到了他們之間的相識關係,現在請你編寫乙個程式判斷一下,是不是這 n個人當中的每個人最多通過六個人就能找到其他任意乙個人。
輸入格式
第一行包含兩個整數 n,m (0輸出格式
滿足輸出 yes 否則 no
輸入樣例
8 7輸出樣例1 22 3
3 44 5
5 66 7
7 8
yes方法一 g陣列記錄是否連通,m陣列用來記錄經過幾次認識
#includeusing namespace std;
const int max_n=110;
int g[max_n][max_n];
int m[max_n][max_n];
int n,mm;
void init()else
} }}void insert(int a,int b)
void floyd()
if(g[i][j]&&g[i][k]&&g[k][j])}}
} }}int main()
floyd();
int flag=1;
for(int i=1;i6)
} if(!flag) break;
} if(flag) cout<<"yes"《方法二 g[i][j]表示i到j的最短路徑,保證不超過7即可
#includeusing namespace std;
const int max_n=110;
int g[max_n][max_n];
const int inf=0x3f3f3f3f;
int n,mm;
void init()else
} }}void insert(int a,int b)
void floyd()
}} }
}int main()
floyd();
int flag=1;
for(int i=1;i7)
} if(!flag) break;
} if(flag) cout<<"yes"
}
計蒜客習題 美好的邂逅
蒜頭君走在校園裡,邂逅了乙個美女,可是蒜頭君膽怯了,並沒有上前搭訕。回到宿舍的蒜頭君越想越難過,好在室友提出了乙個很好的辦法,可以通過同學的同學的同學這樣的關係,當同學的同學這樣的關係疊加到足夠大的時候,覆蓋的人群也就會足夠多,這樣就能找到這個美女了,而且蒜頭君的室友很肯定的說,最多隔 66 個人,...
計蒜客 2019計蒜之道D
題意 現在給定你乙個字串 s ss 以及乙個整數 k kk,請求出 s ss的字典序最小的長度為 k kk的子串行。資料範圍 0 s 5000000 00 s 5000 000 樣例輸入 helloworld 5樣例輸出 ellld思路 假如我們先不考慮長度為k的限制我們應當怎麼做?我們以樣例為例子...
計蒜客 解碼
蒜頭君自己發明了一種字串的編碼方式,對於只含有大小寫字母的字串,可以用數字來表示括號裡面的串連續出現的次數 數字有可能超過一位數 比如a abcd 2等價於aabcdabcd。特別地,如果數字前面沒有括號,表示緊貼數字的前面的 乙個字母 出現的次數。比如abc2表示abcc。為了降低解碼的難度,蒜頭...