#include <stdio.h>
const int N = 7; //定义七个区域
int main()
{
char board[N] = {'A','B','C','D','E','F','G'};
int arc [N][N] = { {0,1,0,0,1,1,0},{1,0,1,1,0,0,0},{0,1,0,1,0,0,0},
{0,1,1,0,1,0,1},{1,0,0,1,0,1,1},{1,0,0,0,1,0,0},{0,0,0,1,1,0,0}};
int color[N] = {0}; //所有顶点均未涂色
for(int i=0;i<N;) //为i点涂色
{
color[i]++;
if(color[i] > 4) //i点试探所有颜色
{
color[i] = 0; //取消顶点i的涂色
i = i-1;
continue; //回溯到前一个顶点
}
for(int j=0;j<N;j++)
{
if((arc[i][j] == 1)&&(color[i] == color[j]))
const int N = 7; //定义七个区域
int main()
{
char board[N] = {'A','B','C','D','E','F','G'};
int arc [N][N] = { {0,1,0,0,1,1,0},{1,0,1,1,0,0,0},{0,1,0,1,0,0,0},
{0,1,1,0,1,0,1},{1,0,0,1,0,1,1},{1,0,0,0,1,0,0},{0,0,0,1,1,0,0}};
int color[N] = {0}; //所有顶点均未涂色
for(int i=0;i<N;) //为i点涂色
{
color[i]++;
if(color[i] > 4) //i点试探所有颜色
{
color[i] = 0; //取消顶点i的涂色
i = i-1;
continue; //回溯到前一个顶点
}
for(int j=0;j<N;j++)
{
if((arc[i][j] == 1)&&(color[i] == color[j]))