扇形图色问题

解法转自扇形图色问题

 

题目描述

将一个圆形等分成N个小扇形,将这些扇形标记为1,2,3,…,N。现在使用M种颜色对每个扇形进行涂色,每个扇形涂一种颜色,且相邻的扇形颜色不同。

求:有多少种涂色方法。

 

分析

设a(n)为符合要求的第n个扇形的涂色方法。
对扇形1有m种涂色方法,扇形2有m-1种涂色方法,扇形3也有m-1种涂色方法,扇形n也有m-1种涂色方法。于是,共有m×(m−1)^(n−1)种不同的涂色方法,但是这种涂色方法可能出现1与n着色相同的情形,这是不符合题意的,因此,答案应从m×(m−1)^(n−1)中减去这些不符合题意的涂色方法。不符合题意的涂色方法怎么计算?把1与n捆绑,其涂色方法相当于用m种颜色对n-1个扇形涂色,为a(n-1),于是:a(n)=m*(m-1)^(n-1)-a(n-1), n>=3。其中a(3)=m*(m-1)*m(-2)。
其实到这里就可以直接用递归编程求解了。当然也可以继续推下去:
这里写图片描述

原文地址:https://www.cnblogs.com/wmx24/p/8567676.html