E Cover it 黑白染色問題

2021-10-06 13:22:10 字數 1204 閱讀 9408

傳送門哈哈傳遞哈斯防火牆 因為圖

聯通,我

們任取一

點開始遍

歷因為圖聯通,我們任取一點開始遍歷

因為圖聯通,

我們任取

一點開始

遍歷 比如從

點1開始

,那麼假

設1塗色

比如從點1開始,那麼假設1塗色

比如從點1開

始,那麼

假設1塗

色 那 麼和

1相鄰的

不上色,

相鄰的相

鄰上

色那麼和1相鄰的不上色,相鄰的相鄰上色

那麼和1相鄰

的不上色

,相鄰的

相鄰上色但這

樣答案可

能超過n

/2.

但這樣答案可能超過n/2.

但這樣答案可

能超過n

/2.

那 我們

對顏色取

反,上色

的都不上

色,不上

色的都上

色那我們對顏色取反,上色的都不上色,不上色的都上色

那我們對顏色

取反,上

色的都不

上色,不

上色的都

上色 效果相

同,但一

定小於n

/2

了效果相同,但一定小於n/2了

效果相同,但

一定小於

n/2了

#include using namespace std;

const int maxn=4e5+10;

int top,vis[maxn],t,n,m,color[maxn];

struct pd[maxn];int head[maxn],cnt=1;

void add(int u,int v)

void dfs(int now,int se)

}void print_one()

vis[1]=1;

dfs(1,0);

if(top<=n/2) print_one();

else print_zero();

cout

top=0,cnt=1;

}}

2638 黑白染色

題目鏈結 題目大意 黑白矩陣,每次可以選擇乙個四聯通塊染色,求最少操作次數 題解 將目標狀態裡相同顏色的聯通塊縮點,列舉起點,生成樹里的最大節點深度就是需要的次數了 如果最大深度是白色的話記得 1 我的收穫 bfs樹 include include include include using nam...

acdream 1056 (黑白染色)

題意 給你一些關係,每個關係是兩隻馬的名字,表示這兩個馬不能在乙個分組裡,問你能否將這些馬分成兩組。黑白染色,相鄰的點染不同顏色。bfs搞即可,水題。this code is made by wangzhili problem 1056 verdict accepted submission dat...

CZY選講 黑白染色

題目描述 給出平面上n 個點,試將他們黑白染色,要求染色後無法用一條直線把黑白完全分開。隨便輸出一種方案。資料範圍 n 100000 題解 點數很多,但是可以發現至多需要4個點就可以完成。根據上述結論進行分類討論即可 找三個點,若三點共線,則按圖1方法染色。若三點不共線,再找第四個點,若與其中兩點共...