#include <iostream>
#include <cstdio>
#include <vector>
using namespace std;
#define MAX 10000
vector<int> G[MAX];
int color[MAX];
void buildGraph()
{
int e;
scanf("%d",&e);
int s,t;
for(int i=0;i<e;i++)
{
scanf("%d %d",&s,&t);
//printf("s=%d,t=%d,i=%d",s,t,i);
G[s].push_back(t);
G[t].push_back(s);
}
}
bool dfs(int v,int c)
{
color[v]=c;
for(int i=0;i<G[v].size();i++)
{
if(color[G[v][i]]==0)
{
return dfs(G[v][i],-c);
}
if(color[G[v][i]]==c)
{
return false;
}
}
return true;
}
void solve(int v)
{
for(int i=0;i<v;i++)
{
if(color[i]==0)
{
if(!dfs(i,1))
{
printf("no!\n");
return;
}
}
}
printf("yes!\n");
}
int main()
{
buildGraph();
solve(3);
return 0;
}
C++二分圖代碼實現(xiàn)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 先奉上一段in-place交換的方法 冒泡排序?qū)崿F(xiàn) 快速排序?qū)崿F(xiàn) 二分插入排序
- 通過 while 循環(huán)的方式,簡單實現(xiàn) C 語言的二分查找。 運行驗證如下: key 在左側(cè) key 超出左側(cè) k...
- 字符串用strcmp()來比較是墜吼的!因為c里面字符串的名字只是個指針, 比較指針沒有意義嘛. 估計這個函數(shù)就是...
- 二分查找二分查找 又稱折半查找,要求數(shù)組必須是有序的數(shù)列,是一種有序查找算法。二分查找的時間復(fù)雜度是O(log n...