二分着色
Posted 行尸走肉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二分着色相关的知识,希望对你有一定的参考价值。
用两种颜色覆盖图
#include<iostream> #include<stdio.h> #include<vector> #define maxv 1000 using namespace std; vector<int>G[maxv]; int v; int color[maxv]; bool dfs(int v,int c) { color[v]=c; for(int i=0;i<G[v].size();i++) { if(color[G[v][i]]==c) return false; if(color[G[v][i]]==0&&!dfs(G[v][i],-c)) return false; } return true; } int main() { for(int i=0;i<v;i++) { if(color[i]==0) { if(!dfs(i,1)) { printf("NO\n"); return 0; } } } printf("YES\n"); return 0; }
以上是关于二分着色的主要内容,如果未能解决你的问题,请参考以下文章