P1330 封鎖陽光大學 二分染色

2021-08-20 05:13:01 字數 1089 閱讀 1088

曹是乙隻愛刷街的老曹,暑假期間,他每天都歡快地在陽光大學的校園裡刷街。河蟹看到歡快的曹,感到不爽。河蟹決定封鎖陽光大學,不讓曹刷街。

陽光大學的校園是一張由n個點構成的無向圖,n個點之間由m條道路連線。每只河蟹可以對乙個點進行封鎖,當某個點被封鎖後,與這個點相連的道路就被封鎖了,曹就無法在與這些道路上刷街了。非常悲劇的一點是,河蟹是一種不和諧的生物,當兩隻河蟹封鎖了相鄰的兩個點時,他們會發生衝突。

詢問:最少需要多少只河蟹,可以封鎖所有道路並且不發生衝突。

輸入格式:

第一行:兩個整數n,m

接下來m行:每行兩個整數a,b,表示點a到點b之間有道路相連。

輸出格式:

僅一行:如果河蟹無法封鎖所有道路,則輸出「impossible」,否則輸出乙個整數,表示最少需要多少只河蟹。

輸入樣例1:

3 3

1 21 3

2 3

輸出樣例1:

impossible
輸入樣例2:

3 2

1 22 3

輸出樣例2:

1

#include #include #include #include #include #include #include #include #define inf 99999999

using namespace std;

const int maxn=10005;

int flag=0;

int vis[maxn],col[maxn];

vectore[maxn];

int sum[3];

int n,m,ans=0;

void dfs(int u,int one)

if(!vis[v])

}}int main()

for(int i=1;i<=n;i++)

}if(!flag) printf("%d\n",ans);

else printf("impossible\n");

return 0;

}

P1330 封鎖陽光大學 搜尋 染色

曹是乙隻愛刷街的老曹,暑假期間,他每天都歡快地在陽光大學的校園裡刷街。河蟹看到歡快的曹,感到不爽。河蟹決定封鎖陽光大學,不讓曹刷街。陽光大學的校園是一張由n個點構成的無向圖,n個點之間由m條道路連線。每只河蟹可以對乙個點進行封鎖,當某個點被封鎖後,與這個點相連的道路就被封鎖了,曹就無法在與這些道路上...

P1330 封鎖陽光大學

曹是乙隻愛刷街的老曹,暑假期間,他每天都歡快地在陽光大學的校園裡刷街。河蟹看到歡快的曹,感到不爽。河蟹決定封鎖陽光大學,不讓曹刷街。陽光大學的校園是一張由n個點構成的無向圖,n個點之間由m條道路連線。每只河蟹可以對乙個點進行封鎖,當某個點被封鎖後,與這個點相連的道路就被封鎖了,曹就無法在與這些道路上...

P1330 封鎖陽光大學

曹是乙隻愛刷街的老曹,暑假期間,他每天都歡快地在陽光大學的校園裡刷街。河蟹看到歡快的曹,感到不爽。河蟹決定封鎖陽光大學,不讓曹刷街。陽光大學的校園是一張由n個點構成的無向圖,n個點之間由m條道路連線。每只河蟹可以對乙個點進行封鎖,當某個點被封鎖後,與這個點相連的道路就被封鎖了,曹就無法在與這些道路上...