一、问题描述及解析:
图的m着色问题。给定无向连通图G和m种颜色,用这些颜色给图的顶点着色,每个顶点一种颜色。如果要求G的每条边的两个顶点着不同颜色。给出所有可能的着色方案;如果不存在,则回答“NO”。
二、算法核心步骤(伪代码)及图解:
三、代码实现:
#include<stdio.h>
#include<string.h>
const int max=120;
int n,m,match;//顶点数,颜色数,边数
int c[max][max];//图的链接矩阵
int b[max];//当前的解
int sum=0;//方案数
bool A(int a)
{
for